关于对tableView分割线的处理

    都知道,苹果自带tableView分割线不是整个屏幕宽度的。很多时候,需求让分割线等于屏幕宽度,就需要进行一些设置。

   一、storyboard中:

     对静态tableView的设置,选中tableView,在右侧会有下面的选项。

   

图中红色部分,就是设置分割线的左右间距。但是很遗憾,当left为0时,与屏幕宽度还是差了一点点。于是,需要进行代码设置

 

二、代码设置

在tableView中,加入以下代码,即可

-(void)viewDidLayoutSubviews
{
    if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {
        [self.tableView setSeparatorInset:UIEdgeInsetsMake(0,0,0,0)];
    }
    
    if ([self.tableView respondsToSelector:@selector(setLayoutMargins:)]) {
        [self.tableView setLayoutMargins:UIEdgeInsetsMake(0,0,0,0)];
    }
}

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

 

posted on 2016-06-12 20:52  晨趣  阅读(229)  评论(0)    收藏  举报