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