方向更改后安全区域大小更改

时间:2018-04-10 16:41:59

标签: ios swift autolayout orientation

我遇到了一个非常奇怪,令人沮丧的问题。当我的视图最初以纵向方式加载时,安全区域布局指南是预期的大小。但是,在旋转到横向然后返回到纵向后,它们与初始加载不同。这会丢掉iPhone X上的所有子视图。

我在viewWillLayoutSubviews()

添加了打印语句
print("View Size: \(view.frame.size)")
print("View Layout Size: \(view.safeAreaLayoutGuide.layoutFrame.size)")

运行应用程序并执行方向更改时,输出为:

在改变方向之前:

View Size: (375.0, 812.0)
View Layout Size: (375.0, 734.0)

风景:

View Size: (812.0, 375.0)
View Layout Size: (724.0, 354.0)

回到肖像:

View Size: (375.0, 812.0)
View Layout Size: (383.0, 734.0)

如您所见,视图大小没有变化。但是,布局指南大小 8px 更宽。

非常感谢任何帮助。

0 个答案:

没有答案