ios UITableView设置 setSeparatorInset:UIEdgeInsetsZero不起作用的解决办法

释放双眼,带上耳机,听听看~!

在ios7中,UITableViewCell左侧会有默认15像素的空白。这时候,设置setSeparatorInset:UIEdgeInsetsZero
能将空白去掉。

但是在ios8中,设置setSeparatorInset:UIEdgeInsetsZero
已经不起作用了。下面是解决办法

首先在viewDidLoad方法加入以下代码:

 

if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {

[self.tableView setSeparatorInset:UIEdgeInsetsZero];

}

if ([self.tableView respondsToSelector:@selector(setLayoutMargins:)]) {

[self.tableView setLayoutMargins:UIEdgeInsetsZero];

}

 

然后在UITableView的代理方法中加入以下代码

 

- (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];

}

}

 

这样,空白就没有了

人已赞赏
iOS文章

IOS设置字体行间距

2020-3-31 6:03:04

iOS文章

IOS UIlabel点击全文扩展

2020-3-31 7:18:04

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索