iOS Swift,约束将视图推离情节提要

iOS Swift, Constraint pushing view off sotryboard

我正在开发我的第一个 swift 应用程序,我很快发现我需要使用约束来正确布局我的页面。到目前为止,我 运行 有两个问题。

第一个是在添加一些 constraints 之后,我的视图在故事板上被推离了屏幕,但在助理编辑器中它看起来很好(在我的第二期之外)。

我的第二个问题是,在某些 phone 尺寸上,约束会导致文本字段在助理编辑器和 iPhone 6s 测试设备上查看时扩大。

我在下面添加了一些屏幕截图。非常感谢对此问题的任何帮助。

每次您在故事板中添加约束时,它不会自动应用于您的工作视图。你可能认为它应该立即应用,但试着这样想。如果你有一个视图,并且你应用了高度约束(例如)并且如果 Xcode 自动应用它,你将得到一个宽度为 0 的视图,因为你没有应用宽度约束。这就是为什么您需要告诉 Xcode 显式更新约束。

因此,当您想要更新约束时,select 查看您想要更新的内容并转到 解决自动布局问题 ,然后单击 更新帧。它位于故事板的右下角。它看起来像两条线之间的一个小三角形。您可以在此处更新所有视图或仅更新 select 视图。

对于第二个问题,您需要对 stack view 应用 固定宽度 约束,而不是添加前导和尾随约束。通过这样做 stack view 将在每个设备上具有相同的宽度。