我正在使用新的 iOS 8 API:
self.tableView.estimatedRowHeight = 60
self.tableView.rowHeight = UITableViewAutomaticDimension
这在大多数情况下效果很好,但如果有时动态计算单元格的高度,它会破坏我的自定义单元格:
更多信息:
- 看起来tableview确实正确计算了高度(它在2个单元格之间有空白空间),但不知何故部分单元格被隐藏了。
- 单元格的显示部分(白色背景部分)与我的 xib 文件中的单元格高度相同。
- 只有当单元格的计算高度大于我在 xib 文件中设置的高度(在我的例子中为 60)时,才会发生这种情况。如果高度等于 xib 中的单元格高度,则效果良好。不过,我没有对我的 xib 中的高度设置任何限制。
最佳答案
我看到您通过 xib 文件和 Interface Builder 创建了自定义单元,对吗?
有一些设置可以使用自定义高度,并在 IB 中的单元格和表格 View 详细信息中设置自定义高度。对于单元格,我认为它是高度属性,您选中自定义框并输入您的高度。
对于 TableView ,有一个行高属性,您可以检查自定义并在其中选择高度。
我的自定义单元格发生过奇怪的事情,但没有确保这些设置在 IB 中是否合适。
请告诉我这是否有效或者是否还有其他问题!
关于swift - estimatedRowHeight API 有时会破坏自定义单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31237176/