前言:我正在以编程方式进行所有操作。 0接口构建器。
以前,当将VC推送到navVC堆栈时,所推送的VC的上边缘将被导航栏遮挡。我想要它,所以被推送的VC的顶部边缘在导航栏下方。我发现“ edgesForExtendedLayout”达到了我想要的目的。除了苹果说: “代替此属性,请使用视图的安全区域来确定其他内容遮挡了界面的哪些部分。有关更多信息,请参见UIView的safeAreaLayoutGuide和safeAreaInsets属性。”
我不知道如何翻译以下代码:
if let nextVC = getNextVC() {
nextVC.edgesForExtendedLayout = .init(rawValue: 0)
pushViewController(nextVC, animated: true)
}
使用safeAreaLayoutGuide或safeAreaInsets。我不能使用约束,因为推送视图还不在视图层次结构中?
我附加了一些图像,以了解我要处理的内容。
绿色= UINavigation控制器的边框
黄色='nextVC'的边框
红色='nextVC'中表的边框