我正在 Xcode 5 中构建一个 iOS 应用程序,但在添加布局约束时遇到了问题。在 Xcode 4.x 中,我可以将前导/尾随/顶部/底部空格添加到容器(超级视图)到任何 UI 元素。现在,我只有这个选项:
我想在我的文本视图中添加一个“超级视图的底部空间”约束。它说“与最近邻居的间距”,但我不想创建对“最近邻居”的约束,我的文本视图下还有其他东西,我不想用它来创建约束。如果我的文本视图下没有其他对象,它会正确地向容器添加一个约束。但是,如果我尝试更改任何内容,一切都会变得一团糟:我需要将所有视图移动到其他位置,然后添加约束,然后添加将其他视图移回。如果我在文本视图和 UI 元素(在这种情况下是一个按钮)之间添加一个约束,它就不起作用(一切似乎都正确:按钮对超级视图的底部有一个约束,而文本视图有一个垂直间距约束)按钮,并且没有冲突的约束)。UI 元素以不同的(3.5 英寸)屏幕方向显示在屏幕边界之外。Interface Builder 是否存在错误,或者我遗漏了什么?当我可以正确设置所有内容时,当我调整界面构建器屏幕的大小时,我的控件似乎仍然超出范围,但在 3.5 英寸的模拟器/设备上正确显示。在 Xcode 5 中使用新的 Interface Builder 约束来设计 UI 的“最佳实践”是什么?
更新:我在另一个有同样事情的项目中遇到了更多麻烦。我试图通过 CTRL 将我的控件拖动到它说“顶部布局指南”的位置来精确地修复视图的顶部到顶部布局指南,并且它正试图将我的控件底部与布局指南相匹配(大约 -470点)而不是调整我的控件的顶部,这没有任何意义,因为控件应该在可变高度的屏幕中进行布局(例如常规和 4 英寸 iPhone,以及将来可能的其他布局..)。这是正在发生的事情的屏幕截图:
我在约束中得到了这个:
如何使 Interface Builder 将视图顶部与顶部布局指南对齐?
更新 2:我找到了一种解决方法。我首先调整视图的大小以减小它的高度(因此它的顶部不会重叠或非常靠近顶部布局指南),然后我 CTRL+将其拖动到顶部布局指南。它似乎工作正常。连接后,我再次将视图调整为所需大小并选择Update Constraints
. 它可以工作,但它仍然不是解决方案,因为它需要调整视图大小、连接、再次调整大小和更新约束。