美文网首页iOS开发
iOS之分割线设置

iOS之分割线设置

作者: ChinaGoodStaff | 来源:发表于2017-09-22 12:14 被阅读239次

    iOS开发中关于没有数据时不显示tableView的分割线

    //可以直接添加如下代码即可
    self.tableView.tableFooterView = [[UIView alloc]init];
    

    我们在使用tableview时会发现分割线的左边会短一些,通常可以使用setSeparatorInset:UIEdgeInsetsZero 来解决。但是升级到XCode6之后,在iOS8里发现没有效果。下面给出解决办法:
    首先在viewDidLoad方法中加上如下代码:

    if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {
    
    [self.tableView setSeparatorInset:UIEdgeInsetsZero];
    }
    if ([self.tableView respondsToSelector:@selector(setLayoutMargins:)]) {
    
    [self.tableView setLayoutMargins:UIEdgeInsetsZero];
    }
    

    然后在willDisplayCell方法中加入如下代码:

    - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
    {
    
    if ([cell respondsToSelector:@selector(setSeparatorInset:)]) {
    
    [cell setSeparatorInset:UIEdgeInsetsZero];
    }
    if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {
    
    [cell setLayoutMargins:UIEdgeInsetsZero];
    }
    }
    

    这样就可以正常显示了。

    设置分割线的颜色
    self.tableView.separatorColor = [UIColor redColor];
    

    相关文章

      网友评论

        本文标题:iOS之分割线设置

        本文链接:https://www.haomeiwen.com/subject/wrxfextx.html