我已经使用以下代码修复了分隔符问题:
if([tableView respondsToSelector:@selector(setSeparatorInset:)]) {
[tableView setSeparatorInset:UIEdgeInsetsZero];
}
但是在iOS7中,UITableView
和cell.textLabel
或detailTextLabel
我有自定义UITableViewCells,我指定了文本标签的位置,因此这会导致标签与iOS 6和7中的标准单元格不对齐。
有什么想法吗?
答案 0 :(得分:2)
尝试下面的解决方案,这将在ios 6,7上保持一致
您可以自定义UILabel
并连接到自定义UITableViewCell
类。
您可以通过在单元格的底部边缘放置UIImageView来设置分隔符
并从故事板中将Separator样式设置为none。
答案 1 :(得分:0)
你在使用故事板吗?如果你是,最好从故事板中做到这一点。从故事板中的UIViewController中选择您的UITableView对象。在“Attributes Inspector”下,找到“Separator Inset”,选择“Custom”并确保“Left”和“Right”都为0.
屏幕截图: -
答案 2 :(得分:0)
对于UITableViewCell,只能在UITableViewCell的子类中修改cell.textLabel和detailTextLabel的帧。试试这个:
- (void)layoutSubviews{
[super layoutSubviews];
self.textLabel.frame = self.textLbFrame;
self.detailTextLbFrame = self.detailTextLabel.frame;
}
答案 3 :(得分:0)
在故事板中配置约束时,有一些选项可以使约束相对于边距。在tableviews的情况下,默认情况下会选择该选项。
要修复:选择每个水平约束,选择Superview.Leading / Trailing
并取消选中Relative to margin
。