在ios7之后 新增@property (nonatomic) UIEdgeInsets separatorInset;
一般情况下 通过设置inset内边距的值即可改变cell分割线的长度。
(注意:)cell左侧同时缩进了15个像素,要想达到去除的效果,在ios8后需要实现如下两个方法:
e.g:
/**
* ios8之后对cell分割线 左侧的处理,实现两个方法
*/
- (void)viewDidLayoutSubviews
{
if ([_rightTableView respondsToSelector:@selector(setSeparatorInset:)]){
[_rightTableView setSeparatorInset:UIEdgeInsetsZero];
}
if ([_rightTableView respondsToSelector:@selector(setLayoutMargins:)]) {
[_rightTableView setLayoutMargins:UIEdgeInsetsZero];
}
}
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
if ([cell respondsToSelector:@selector(setSeparatorInset:)]) {
[cell setSeparatorInset:UIEdgeInsetsZero];
}
if ([cell respondsToSelector:@selector(setPreservesSuperviewLayoutMargins:)]) {
[cell setPreservesSuperviewLayoutMargins:NO];
}
if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {
[cell setLayoutMargins:UIEdgeInsetsZero];
}
}
iOS10后可以修改separator Insert 选项的值改变分割线的宽度
网友评论