gpt4 book ai didi

ios - headerView 的 UITableView contentOffset 未对齐

转载 作者:行者123 更新时间:2023-11-28 12:09:16 24 4
gpt4 key购买 nike

我的 tableView 中的 headerView 应该一直到设备的顶部。在 iPhone X 上也是如此,所以缺口超过了它。

然后,当我滚动我的 tableView 时,我使用 scrollViewDidScroll(scrollView: UIScrollView) 更改我的 headerView 的高度以添加 scrollView.contentOffset.y 所以它会一直方式。

它在我滚动时立即起作用,但一开始不起作用。

所以看起来像这样:

enter image description here

X 上的这个

iPhone X

如何去除白色区域,以便加载时灰色区域位于其下方?

我尝试了几个地方,但似乎 tableView 仍然没有 contentOffsets...我想我在这里缺少一些基本的东西,如何“应该完成”...

更新:ViewHierarchy,蓝色是 tablewView,但后来我得到了这个距离......

enter image description here

最佳答案

好的,我找到了。因此,这与为 iPhone X 引入的安全区域的变化有关。

有两种可能性,这实际上取决于 Storyboard 设置:

如果您使用的是 Storyboard,并且您的基础是一个 UIViewController,其中放置了一个 tableView:

然后修复自动布局就是答案:

启用安全区域后,单击最顶层 View 并创建顶部约束相对于常量为 0 的 superView。默认情况下它想要保护安全区域,因此它是相对于安全区域设置的。

如果您使用的是 UITableViewController 模板(例如,拖出导航 Controller 时的默认设置 - tableview 组合(我的案例))

这里没有可以设置的约束。因此它对我不起作用(见上文)。要修复它,请单击根 tableView,选择大小检查器,然后将“内容插入”设置为“从不”。

或者在 viewDidLoad 中以编程方式:

self.tableView.contentInsetAdjustmentBehavior = .never

关于ios - headerView 的 UITableView contentOffset 未对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48851115/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com