“tableView.contentSize”和“tableView.frame.size”有什么区别?

10
tableView.setContentOffset(CGPointMake(0, tableView.contentSize.height - tableView.frame.size.height), animated: true)

它能够工作,但我想知道这两个值是什么: tableView.contentSizetableView.frame.size


这与UIScrollView部分有关,涉及到实际显示的内容以及整体大小的问题(包括“隐藏”的内容,在滚动时才会显示)。 - Larme
2
如果你想深入了解,请查看此链接:http://www.objc.io/issue-3/scroll-view.html - Ethaan
1个回答

22

contentSizeUIScrollView内容的大小,这意味着它将是内容(隐藏和可见部分)的大小,而frame.size是你的tableView的真实大小。

例如,假设我有一个高度为568的设备屏幕,在其中放置了一个UITableView(占据整个屏幕),其中有100个单元格,每个单元格的高度为50。我的tableView.frame.size.height将等于568,但tableView.contentSize.height将等于所有单元格滚动的大小,因此为5000。

另外,如@Ethaan所建议的,请阅读此文以深入了解。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接