UITableView部分中的iOS7最后一个单元格强制全宽分隔符

Tim*_*own 30 objective-c uitableview ios

UITableView下面有风俗UITableViewCells,我可以使用自定义此行调整分隔罚款UITableViewCell:

self.separatorInset = UIEdgeInsetsMake(0, kDefaultSeparatorLeftInset, 0, 0);
Run Code Online (Sandbox Code Playgroud)

但是,该部分底部的单元格具有一个默认分隔符,该分隔符将覆盖UIEdgeInsets我设置的自定义.

我希望所有分隔符的宽度相同,有没有办法在不重新绘制分隔符的情况下执行此操作?

在iOS7中使用宽截面分隔符的UITableView

Tim*_*own 12

经过一些实验,我发现唯一真正的解决方案是使用以下方法设置UITableViewStyleto UITableViewStylePlain并设置空页脚:

-(UIView*)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section
{
    return [[UIView alloc] initWithFrame:CGRectZero];
}

-(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
{
    return 0.01f;
}
Run Code Online (Sandbox Code Playgroud)

对于某些人来说这不是一个令人满意的解决方案,因为UITableViewStylePlain它没有提供所有的功能UITableViewStyleGrouped,但它给了我没有全宽分隔符的部分.

在此输入图像描述

  • 我有相同的情况,它一直有效,直到我点击最后一个单元格.点击最后一个分隔符再次全宽并在代码`[self.tableView setSeparatorInset:UIEdgeInsetsMake(0,15,0,0)]中更改它没有帮助.有解决方案吗 (6认同)