我需要查找表视图内容的大小,因为我需要根据行数增加表的高度。我使用表格视图自动尺寸来自动增加基于单元格高度的单元格内容。因此,我过去通常是在表格视图完全加载后才找到表格内容的大小,然后我们可以调整表格视图的大小。
我使用下面的代码来获取表格视图的内容大小,
Print(tableview.contentSize)
,但是尺寸错误。因此,我研究了一些链接,然后发现了这个https://forums.developer.apple.com/thread/81895。在该链接中,您可以看到Apple表示我们需要将估计的桌子高度提到为0,以获取正确的桌子视图内容大小。但这又使内容大小错误。例如,
表视图加载5行,内容大小高度为100.0表示,但仅给出80.0。我不知道如何找到确切的表格视图内容大小。你能帮上忙吗?
答案 0 :(得分:0)
如果有任何UIView
继承UIScrollView
,则可以在contentSize
下轻松获得更新的viewDidLayoutSubviews
。
override func viewDidLayoutSubviews() {
debugPrint("Updated Contensize \(tableView.contentSize)")
}
答案 1 :(得分:0)
您应该为 tableView高度限制设置出口,并在UIViewController中覆盖 updateViewConstraints ()方法。
override func updateViewConstraints() {
tableHeightConstraint.constant = tableView.contentSize.height
super.updateViewConstraints()
}
谢谢