在ios7中,UITableViewCell左側(cè)會(huì)有默認(rèn)15像素的空白。這時(shí)候,設(shè)置setSeparatorInset:UIEdgeInsetsZero 能將空白去掉。
但是在ios8中,設(shè)置setSeparatorInset:UIEdgeInsetsZero 已經(jīng)不起作用了。下面是解決辦法
首先在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];
}
}
這樣,空白就沒有了
文章轉(zhuǎn)載自(http://blog.csdn.net/yesjava/article/details/41039961)