我有一个
显然,这会将其设置为整个表格,但我希望根据需要逐个单元格进行操作:
UITableViewCell
,其中的内容延伸到其所有边缘。我在多个表格中使用此单元格,在这些表格中需要不同的插入(例如,一个表格将其从左侧插入8个点,另一个表格将其插入20个点)。我想在父UITableView
代码(可能是cellForRow
?)中缩进单元格,而不缩进整个表格。显然,这会将其设置为整个表格,但我希望根据需要逐个单元格进行操作:
tableView.contentInset = UIEdgeInsets(top: 0, left: 20, bottom: 0, right: -20)
这没有任何效果:
tableViewCell.contentView.layoutMargins = UIEdgeInsets(top: 0, left: 20, bottom: 0, right: -20)
即使这个功能在单元格本身上,也无法正常工作:
override func layoutMarginsDidChange() {
super.layoutMarginsDidChange()
self.layoutMargins = UIEdgeInsets(top: 0, left: 20 bottom: 0, right: -20)
}
cellForRow
中,你可能会传递一些对象来配置你的自定义单元格,对吧?我建议扩展该对象(或传递第二个对象),以包含一个变量,告诉单元格是否有条件地使用不同的布局。 - Connor Nevilleoverride func layoutMarginsDidChange() {
似乎没有任何效果。 - Justin VallelycellForRow
并创建单元格时,您应该在将单元格返回给 UITableView 之前为每个单独的单元格设置它。 - Nordeast