UITableView分割线左边空白解决方法

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

ios8中,setSeparatorInset:UIEdgeInsetsZero 的设置已经不起作用了。

下面是解决方法:

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

 [self.tableView setSeparatorColor:[UIColor colorWithRed:(227/255.0) green:(229/255.0) blue:(231/255.0) alpha:0.9]];

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

{

     [self.tableView setSeparatorInset:UIEdgeInsetsZero];

}

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

 {

     [self.tableView setLayoutMargins:UIEdgeInsetsZero];

}

然后在代理设置下面

 - (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)