IphoneX 安全区在使用 PageViewController 时导致隐藏内容

Posted

技术标签:

【中文标题】IphoneX 安全区在使用 PageViewController 时导致隐藏内容【英文标题】:IphoneX Safe Area leads to hidden content while using PageViewController 【发布时间】:2018-06-12 22:57:42 【问题描述】:

安全区域和页面视图的问题,我无法发布问题,因为 *** 给了我一个关于“代码”的错误,但我没有包含代码,所以我发布了图片,请参阅下面的图片,谢谢。

【问题讨论】:

不确定我是否 100% 理解您的问题,但除了“使用自动布局”和“使用特征变化”之外,请尝试检查“使用安全区域布局指南”。 【参考方案1】:

自动布局有时会表现得很奇怪。当它对我不起作用时,我会做一些事情来尝试解决它,这可能对你有用,也可能对你没有用: 我

    复制视图控制器,这样我所做的任何事情都与它隔离 仅限实例。 将新的(复制的)视图控制器设置为初始视图控制器。 删除所有约束 运行应用并在手机上查看结果。 可能会使用 shift + command + K 来清理应用缓存,因为在对自动布局进行大量细微更改时,有时会出现一些小故障。 再次运行应用,看看是否有任何变化。 一次引入任何一种自动布局功能,然后在其间运行应用程序以查看其是否朝着正确的方向前进。

我发现在另一个视图控制器上执行此操作并至少遵循上述过程的变体通常可以解决您所描述的大多数自动布局问题。 祝你好运,我希望它有所帮助!

【讨论】:

【参考方案2】:

所以我不明白为什么,但解决这个问题的方法是在呈现视图控制器的 uiviewcontroller 上添加一个 pageViewHolder 视图,然后像这样为底部设置一个常量 1 的约束

self.pageViewHolder.addConstraint(NSLayoutConstraint(item: (self.pageController?.view)!, attribute: .bottom, relatedBy: .equal, toItem: self.pageViewHolder, attribute: .bottom, multiplier: 1.0, constant: 1.0));

还要注意 pageViewHolder 被限制在超级视图底部而不是安全布局。

【讨论】:

以上是关于IphoneX 安全区在使用 PageViewController 时导致隐藏内容的主要内容,如果未能解决你的问题,请参考以下文章

iphoneX底部安全区域适配

iPhoneX 适配总结

适配iphoneX底部安全区

vue适配iphoneX底部安全区域

使用 iPhone X 的安全区域指南计算 UIView 的高度

H5适配iphoneX手机下的黑色横条问题