我试图创建一个可伸缩的表格视图标题,我在网上的一篇文章中看到了这段代码:
override func viewDidLoad() {
tableView.contentInset = UIEdgeInsets(top: kTableHeaderHeight, left: 0, bottom: 0, right: 0)
tableView.contentOffset = CGPoint(x: 0, , y: -kTableHeaderHeight)
updateHeaderView()
}
我在理解这段代码时遇到了一些麻烦。
所以基本上它正在做的是(假设屏幕的高度是 0 到 500 并且kTableHeaderHeight = 200
):
1)它首先通过在属性中tableView
向上移动它来将填充添加到顶部(此移动是相对于 tableView 的框架)。那么现在tableView是否存在从-200到500?kTableHeaderHeight
contentInset
2) 然后它向上移动它的边界-kTableHeaderHeight
。那么contentOffset
只是让它在 -200 到 500 区域内可滚动吗?这就是我们-kTableHeaderHeight
在这种情况下使用 contentOffset by 的原因吗?