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

UITableView在iOS 7上用粗糙的线条绘制:

enter image description here

如何解决?单元格之间的线应该在屏幕的全宽度上。

108137 次浏览

这是iOS7设计的默认值。试着做到以下几点:

[tableView setSeparatorInset:UIEdgeInsetsMake(0, 0, 0, 0)];

你可以从故事板中设置'分离器插图':

enter image description here

enter image description here

UITableView有一个属性separatorInset。您可以使用它将表视图分隔符的insets设置为0,以使它们跨越屏幕的全宽度。

[tableView setSeparatorInset:UIEdgeInsetsZero];

注意:如果你的应用程序也针对其他iOS版本,你应该在调用它之前检查这个属性的可用性,这样做:

if ([tableView respondsToSelector:@selector(setSeparatorInset:)]) {
[tableView setSeparatorInset:UIEdgeInsetsZero];
}