如何在iOS 7上修复UITableView分隔符?

Dmi*_*try 213 iphone uitableview ipad ios ios7

UITableView在iOS 7上使用不规则线条绘制:

在此输入图像描述

怎么解决?单元格之间的线应位于屏幕的整个宽度上.

s1m*_*m0n 488

UITableView有房产separatorInset.您可以使用它将表视图分隔符的insets设置为零,以使它们跨越屏幕的整个宽度.

[tableView setSeparatorInset:UIEdgeInsetsZero];
Run Code Online (Sandbox Code Playgroud)

注意:如果您的应用也定位到其他iOS版本,则应在调用之前检查此属性的可用性,方法是执行以下操作:

if ([tableView respondsToSelector:@selector(setSeparatorInset:)]) {
    [tableView setSeparatorInset:UIEdgeInsetsZero];
}
Run Code Online (Sandbox Code Playgroud)

  • 这个答案在iOS8中对我不起作用.这确实......`tableView.layoutMargins = UIEdgeInsetsZero;`和你的cellForRowAtIndexPath方法:`cell.layoutMargins = UIEdgeInsetsZero;` (45认同)
  • 请正确回答:`if([tableView respondsToSelector:@selector(setSeparatorInset :)]){[tableView setSeparatorInset:UIEdgeInsetsZero]; } (6认同)
  • 这不适合我.但这有效:```if([self.tableView respondsToSelector:@selector(setSeparatorStyle :)]){[self.tableView setSeparatorStyle:UITableViewCellSeparatorStyleNone]; }``` (2认同)

nul*_*ull 237

这是iOS7设计的默认设置.尝试做以下事情:

[tableView setSeparatorInset:UIEdgeInsetsMake(0, 0, 0, 0)];
Run Code Online (Sandbox Code Playgroud)

您可以从故事板中设置" 分隔符插入 ":

在此输入图像描述

在此输入图像描述

  • 这在iOS 8中很奇怪.我将它设置为0但没有任何改变.但是我把它增加到50,它有效!我尝试从代码中将其设置为0但不是.谁能证实这一点?我在Xcode 6 beta 4上. (33认同)
  • 我在Xcode6 beta 4中工作,当左侧和右侧的分隔符插入设置为0时,左侧仍有一个小间隙. (21认同)
  • 对于其他用户,请注意其默认值为"默认".您需要将其更改为"自定义"才能编辑插入值. (11认同)
  • 我无法发布ios 8/xcode 6解决方案,因为问题已被锁定.但是你可以在这里找到ios 8/xcode 6的解决方案:http://stackoverflow.com/questions/25770119/ios-8-uitableview-separator-inset-0-not-working (9认同)
  • 希望在堆栈溢出中会有更多这样的gif (5认同)
  • 仍然在iOS 8 GM版本上发生.我通过在我的细胞底部添加一个高度为1px的UIView来修复它.为了模仿默认的颜色,我将视图的颜色设置为白色,alpha = 0.2 http://puu.sh/bvFnU/a64f1e52f5.png (3认同)
  • 我同意,医生.iOS8不尊重UIEdgeInsetsZero :( (3认同)
  • 在iOS 8中,对我来说也不起作用. (2认同)

归档时间:

查看次数:

108017 次

最近记录:

11 年,3 月 前