考虑到iOS11上UITableView中的垃圾contentSize,如何让带有可变高度单元格的表格视图自动调整到该内容的大小?
答案在这里:Resizing UITableView to fit content已经腐烂,不再适用于iOS11
发布于 2018-03-19 19:36:43
看起来,当UITableView使用Automatic Dimensions - UITableViewAutomaticDimension时,它会在你滚动时动态计算contentSize 。
因此,解决方案是使用KVO捕获这些更改:
var contentSizeObservation: NSKeyValueObservation?
override func viewDidLoad() {
super.viewDidLoad()
contentSizeObservation = tableView.observe(\.contentSize, options: [.new], changeHandler: { tableView, value in
// Do the setup here, this will be called multiple times
})
}重要
您需要将contentSizeObservation changeHandler块定义为全局(作为类成员),否则将不会调用块,因为该变量将被ARC清除。
https://stackoverflow.com/questions/47992106
复制相似问题