系统默认cell分割线是左边缩进15pt
大致遇见以下几种情况:
1.隐藏section分割线,不隐藏row分割线
特别注意初始化UITableView时style设为plain需要再section>=2的情况下才会适用。
2.
如果我们想要隐藏某条分割线或者修改分割线长短可重写下面方法
例如:将section==1且indexpath.row==4的分割线隐藏
-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section == 1 && indexPath.row == 4) {
if ([cell respondsToSelector:@selector(setSeparatorInset:)]) {
[cell setSeparatorInset:UIEdgeInsetsMake(0, 0, 0, kDeviceWidth)];
}
}else{
if ([cell respondsToSelector:@selector(setSeparatorInset:)]) {
[cell setSeparatorInset:UIEdgeInsetsMake(0, 15, 0, 15)];
}
if ([cell respondsToSelector:@selector(setPreservesSuperviewLayoutMargins:)]) {
[cell setPreservesSuperviewLayoutMargins:NO];
}
if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {
[cell setLayoutMargins:UIEdgeInsetsMake(0, 15, 0, 15)];
}
}
}