【发布时间】:2014-11-05 08:31:07
【问题描述】:
我按照本教程启用动态单元格高度:http://www.appcoda.com/self-sizing-cells/
所以我加了
tableView.estimatedRowHeight = 44.0
tableView.rowHeight = UITableViewAutomaticDimension
在viewDidLoad 中,将标签设置为 0 Lines,将字体设置为 System。结果是单元格的大小现在是动态的,并且内容正确显示,但不是在第一次显示表格时。好吧,有些单元格显示正确,但其他单元格的高度为 44。当我滚动表格时,高度似乎已得到纠正。在教程中,他们这样描述:
第一次显示表格视图时,您可能会发现一些单元格 尺寸不合适。但是当你滚动表格视图时,新的 单元格以正确的行高显示。要解决此问题, 您可以在视图出现后强制重新加载
我试过了
override func viewDidLoad() {
super.viewDidLoad()
self.tableView.estimatedRowHeight = 64
self.tableView.rowHeight = UITableViewAutomaticDimension
}
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
self.tableView.reloadData()
}
但它不起作用。任何想法如何解决这一问题?我在 xcode 6.1 和 iOS8.1 上,我正在使用 swift。
我在github上创建了一个简单的测试项目:https://github.com/ArtworkAD/DynamicCellTest
【问题讨论】:
-
显示你的 viewDidLoad() 函数
-
@OlegGordiichuk 我编辑了我的问题。
标签: ios uitableview swift