Swift设置表的高度

时间:2016-10-11 13:20:34

标签: swift uitableview height swift3 contentsize

我有这张桌子,即使我只有一排,我想要一定的高度。我想让它可滚动(底部的空白区域),即使我没有足够的行来覆盖整个屏幕。

我想我应该合作:

tableView.contentSize.height = 2000

但要么我不知道应该把它放在哪里(我应该在之后为表重新加载数据吗?)或者我对如何做到这一点有错误的想法。

有人可以帮忙吗?

编辑:我在表视图中有这个视图,在某些情况下可能高于表格,在这种情况下我无法滚动它。这就是我需要在滚动高度中更改表的原因。

在iOS 10上它按预期工作,但我也必须为iOS 8和9修复它。

3 个答案:

答案 0 :(得分:4)

这已经过测试并且有效:

override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)
    tableView.contentSize.height = 2000
}

实施例: enter image description here

答案 1 :(得分:1)

只有在晚上的这个时刻我才意识到什么有效。我不能直接设置内容大小的高度,但是像这样:

tableView.reloadData()
tableView.layoutIfNeeded()

var contentSizeTemp = tableView.contentSize
contentSizeTemp.height = menuViewHeight.constant 
tableView.contentSize = contentSizeTemp

答案 2 :(得分:0)

如何为表格视图设置约束?或者它是不适合的另一种情况? 在这种情况下,表格的高度与屏幕高度相同,无论它有多少行。 enter image description here