如何使用约束获取UITableView的动态高度。它将根据行数增加UITableView高度而不在表中添加Scrollbar。 我在UIViewController中添加TableView时遇到问题,TableView的高度不应该是静态修复的。
答案 0 :(得分:4)
我发现这样做最简洁的方法是使用表格视图的contentSize
作为intrinsicContentSize
你的tableview必须是一个实际的子类,你可以像这样覆盖contentSize
和intrinsicContentSize
(请注意,contentSize只有一个添加的观察者,它没有真正被覆盖):
override var contentSize: CGSize {
didSet {
self.invalidateIntrinsicContentSize()
}
}
override var intrinsicContentSize: CGSize {
return contentSize
}
现在,当您设置表格视图时,请确保将其内容抗压性和内容拥抱优先级设置为所需,然后它应根据其内在内容大小自动在视图中自行调整大小。