- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有一个 rootViewController
,它有一个 subview Controller (fullScreenViewController
),其 View 不时显示在 View 上方 (但作为 subview )rootViewController
,占据全屏。
即rootViewController.addChildViewController( fullScreenViewController)
rootViewController.view.addSubview( fullScreenViewController.view )
这个“全屏演示”是通过约束更新完成的,不是通过使用present()
(这是有充分理由的)。
当我第一次初始化 fullScreenViewController
并将其添加为 rootViewController
的 subview Controller 时,然后更新约束以使其在屏幕上,safeAreaInsets
都设置正确。
但是,稍后,当我的 rootViewController
实际上执行 present()
模态 VC,并且该 VC 被 dismiss()
编辑,fullScreenViewController
上的safeAreaInsets
不再正确,fullScreenViewController
中的内容向上滑动到状态栏顶部。
如何强制正确重新计算 fullScreenViewController
上的 safeAreaInsets
,以便它们在设置后与 rootViewController
匹配?
根据文档,rootViewController
应该在其所有 childViewController
上正确设置 safeAreaInsets,但事实似乎并非如此。
最佳答案
在演示文稿更改安全区域后, subview Controller 的 safeAreaInsets
没有正确刷新,我遇到了完全相同的问题。
我发现通过使 subview 成为父 View 的直接 subview ,问题得到了解决,而之前它是 subview 的 subview 。我想当子 VC 的 View 是父 View 的直接 subview 时,UIKit 代码会更快乐。
如果您可以将您的 View 层次结构重构到此配置(如果不是这样的话),这可能会做到。
关于ios - 强制更新 subview Controller 的 safeAreaInsets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51214544/
我希望我的 collectionView 在 iOS 11 的状态栏后面流血......但是我的 collectionView 的内容总是偏移 20.0 显然是由于 safeAreaInsets 有没
我为 View 的约束创建了扩展。您可以在下面找到代码,但是在新发布的 iPhone X 之后我们需要使用 safeAreaInsets 但我不知道如何实现该属性。如果你能帮助我,我会很高兴。 谢谢
我需要调整 iPhone X 的 View ,但我不知道 safeAreaInsets 何时初始化。根据文档, If the view is not currently installed in a
我正在开发一款游戏,现在我注意到它在 iPhone X 上看起来不像我预期的那样。我需要在 右上角 上放置一个标签,在 iPhone X 上标签根本没有显示。所以我阅读了有关 Safe Area 的内
我有一个应用程序以编程方式完成所有 UI,而无需使用自动布局或任何类型的约束。屏幕底部是一个 UIToolbar。我试图将其布局为与 iPhone X 屏幕的底部安全区域配合良好,但由于 VC 的设计
我有一个 rootViewController,它有一个 subview Controller (fullScreenViewController),其 View 不时显示在 View 上方 (但作为
当我尝试在我的 View Controller 中检索 viewDidLoad 中的 safeAreaInsets 时,它在 iPhone X 上返回 (0, 0, 0, 0),我知道这是错误的。文档
我正在尝试为 iPhoneX 更新 viewWillTransition(to size: with coordinator:) 方法。但是我无法获取 safeAreaInsets 值的目的地。请帮忙
我有一个水平分页 UIScrollview ,以下是我对前导/尾随的 VFL 约束 H:|-0-[ScrollView]-0-| (与 super View 对齐)。 我有左/右 safeAreaIn
我正在更新我的应用程序以使其适用于 iPhone X。除一个 View 外,所有 View 现在都可以正常工作。我有一个 View Controller ,它呈现一个覆盖整个屏幕的自定义 UIView
我是一名优秀的程序员,十分优秀!