美文网首页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