在 Xcode 中,我尝试向我的应用程序添加一些自动布局约束,但在 Interface Builder 中,底部按钮始终固定在屏幕底部。从技术上讲,这就是我告诉它要做的事情,即与安全区域对齐。问题是,安全区不应该在那里。我不知道安全区域如何、为何或何时移动,但我目前不知道如何将其移回来。尺寸检查器中的选项呈灰色,因此我无法手动更改它(见图)。 我做错了什么?
看起来您已经连接了 Present Modally segue。
在 Storyboard 中设计时,Xcode 不知道所呈现控制器的运行时大小。
例如,如果我们有这个控制器布局(根视图背景设置为红色):
并将该控制器设置为初始控制器,然后运行应用程序,我们得到这个(如预期):
但是,如果我们以模态方式呈现该控制器,我们会得到:
请注意,底部看起来相同,但 Top 不显示红色根视图的一部分。这是因为呈现的控制器不再覆盖设备顶部的安全区域。
为了真正了解发生了什么,我们在 iPad 上运行该应用程序并以模态方式呈现该控制器:
现在,顶部和底部都不会受到安全区域的影响,因此我们在任何地方都看不到红色根视图。
所以...在 Storyboard 中,如果我们添加当前的 segue 连接,它看起来就像您所看到的:
如果我们在 Storyboard 设计时将 Device 更改为
iPad Pro 12.9"
布局,它看起来像这样:
您可能会发现在之前连接当前模态segue更容易在故事板中完成布局设计。