我可能想要一件奇怪的事情,但任务是拉伸(stretch) UITableView 中的最后一个单元格以填充剩余空间。因此,如果表格只有几个单元格,那么最后一个单元格的高度将与其余单元格匹配,直到屏幕底部。
为此,我在最后一个单元格的 xib 中加入了高度约束。
我可以计算适当的高度并设置常量,但之后我做什么并不重要 - setNeedsDisplay()
、setNeedsLayout()
、reloadData()
、reloadRowsAtIndexPaths()
等 - 单元格高度未更改。
只有当我第二次调用更新代码时,布局才会调整。
有什么提示可以立即强制更新单元格吗?
最佳答案
您需要实现以下内容(viewDidLoad 没问题)。
var estimatedRowHeight = 80 (for example)
// Set automatic dimension on row height.
tableView.rowHeight = UITableViewAutomaticDimension
// Set estimated row height.
tableView.estimatedRowHeight = estimatedRowHeight
移除高度限制,然后使用 reloadData
或 reloadRowsAtIndexPaths()
调用调整大小。
关于ios - UITableView:在构建表格后更改一个单元格的高度约束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46796901/