如何延长tableview的分割线,使其左边距为零

2016-06-06  本文已影响0人  YasinWei

iOS开发过程中,当我们创建的tableview为plain类型时,会发现其分割线左边总是会有一定的边距,通过设置UIEdgeInsets也无法使其左边距为零。究竟如何才能延长分割线呢?

首先,在创建tableview的地方加入以下代码:

if([_tableView    respondsToSelector:@selector(setSeparatorInset:)]){

        [_tableView   setSeparatorInset:UIEdgeInsetsZero];

}

if([_tableViewre   spondsToSelector:@selector(setLayoutMargins:)]){

        [_tableView    setLayoutMargins:UIEdgeInsetsZero];

}

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

#pragma mark - tableViewDelegate

- (void)tableView:(UITableView*)tableView willDisplayCell:(UITableViewCell*)cell forRowAtIndexPath:(NSIndexPath*)indexPath{

      if([cellrespondsToSelector:@selector(setSeparatorInset:)]) {

             [cellsetSeparatorInset:UIEdgeInsetsZero];

       }

      if([cellrespondsToSelector:@selector(setLayoutMargins:)]) {

              [cellsetLayoutMargins:UIEdgeInsetsZero];

       }

}

这个方法同样适用于Grouped类型的tableview,但我发现使用了该方法后无法通过tableview的代理方法来控制sectionHeadView的高度,该方案有待进一步完善。望大神指导!

上一篇 下一篇

猜你喜欢

热点阅读