正常情况下,我们使用系统cell展示出来的tableView是这样的:
屏幕快照 2016-04-11 下午10.47.45.png系统自带的分隔线默认会偏移15个像素,有时候我们需要的是从头开始的分隔线,我们只需要改变一些属性就可以实现,而不需要自己去重新绘制一条线来代替分隔线。
第一步:设置tableView的属性:
if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {
[self.tableView setSeparatorInset:UIEdgeInsetsZero];
}
if ([self.tableView respondsToSelector:@selector(setLayoutMargins:)]) {
[self.tableView setLayoutMargins:UIEdgeInsetsZero];
}
第二步:设置cell的属性:
if ([cell respondsToSelector:@selector(setSeparatorInset:)]) {
[cell setSeparatorInset:UIEdgeInsetsZero];
}
if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {
[cell setLayoutMargins:UIEdgeInsetsZero];
}
注意:这种方法可以解决iOS8以后的分隔线问题,iOS8之前只需要设置tableView和cell的SeparatorInset属性即可。
网友评论