可变长度的文本数据被注入到表格视图单元格标签中。为了使每个单元格的高度大小合适,我已经实现了viewDidLoad()
:
self.tableView.estimatedRowHeight = 88.0
self.tableView.rowHeight = UITableViewAutomaticDimension
这估计高度为 88.0 像素,如果高度更大,应该自动调整高度。它非常适合以下细胞have yet滚动到(如UITableViewAutomaticDimention
滚动时调用to单元格),但不适用于加载表格数据后最初在屏幕上呈现的单元格。
我尝试重新加载数据(如许多其他资源中的建议):
self.tableView.reloadData()
in both viewDidAppear()
and viewWillAppear()
但这没有帮助。我迷路了..有谁知道如何渲染最初加载到屏幕上的单元格的动态高度?
尝试这个:
func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}
EDIT
func tableView(tableView: UITableView, estimatedHeightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}
Swift 4
func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}
斯威夫特 4.2
func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
return UITableView.automaticDimension
}
定义上述两种方法。
它解决了问题。
PS:要实现此功能,需要顶部和底部约束。
这是例子
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)