iOS - 如何设置视图宽度等于 TableView 分隔符宽度
Posted
技术标签:
【中文标题】iOS - 如何设置视图宽度等于 TableView 分隔符宽度【英文标题】:iOS - How to set View width equal to TableView Separator width 【发布时间】:2015-12-24 03:37:36 【问题描述】:我是 ios 新手。我在顶部有一个View
(宽度为1 px 高度),在View
下方有一个UITableView
。
现在,View 的前后约束是 10 我尝试为 TableView 设置分隔符插入,其值为 Left 为 10,Right 为 10,但效果不佳(视图宽度不等于 TableView 分隔符宽度)。
我想将View
的宽度设置为等于UITableView Separator
的宽度。
我应该怎么做才能实现它?任何帮助将不胜感激
【问题讨论】:
你的tableView
和super view
的约束leading
和trailing
怎么样?
你的tableView与super view的约束前后为0
***.com/questions/25762723/… 参考这个答案
确实如此。您可以查询单元格的layoutMargins
并使用它们相应地计算视图的大小和位置。
【参考方案1】:
试试这个,您可以通过添加以下方法在自定义 tableviewCell 类中设置分隔符插入,
- (UIEdgeInsets)layoutMargins
return UIEdgeInsetsMake(0, 10, 0, 10);
然后将视图的前导和尾随约束设置为 10 像素。
【讨论】:
与其更改页边距,不如阅读它们并将他的黄色视图调整为这些值(毕竟这是他所要求的)。 仍然是一个好的方向。 此外,Apple 建议不要更改分隔符边距。【参考方案2】:我认为它与margin
属性有关。确保您在设置约束时已经像这样取消选中此选项
还有这个:
在controller
中设置separatorinset
:
self.tableView.separatorInset = UIEdgeInsets(top: 0, left: 10, bottom: 0, right: 10)
希望对您有所帮助!
【讨论】:
以上是关于iOS - 如何设置视图宽度等于 TableView 分隔符宽度的主要内容,如果未能解决你的问题,请参考以下文章