我理解在Interface Builder中alignment,分级和分配视图的旧的Struts和Springs方法。 然而,我似乎无法弄清楚如何使用Xcode 5自动布局均匀分布视图。有一种方法可以使用Xcode 4来完成,但是这个选项已经不存在了。 我有7个button排列在一个垂直的堆栈。 在3.5英寸的布局上,它看起来不错,当我在4“布局中预览屏幕时,所有的button都保持紧凑,最后一个button下面有大量的空间。 我希望他们保持相同的高度,但我希望他们之间的空间能够弯曲,以便他们可以散布在屏幕上。 我已经能够获得button的高度弯曲和填充空间,但这不是我想要的行为。 我想学习如何使用自动布局来取代我的老泉的行为,但我似乎无法find任何方式通过Interface Builder来做到这一点。 我确定顶部button既可以是顶部边缘的固定空间,也可以是顶部边缘的比例空间,同样也适用于底部button和底部边缘。 这些对我来说不那么重要,我也很好。 但我真的需要弄清楚如何均匀分配视图中每个项目之间的额外空间。
各位开发者,我在Interface Builder(Xcode 5 / iOS 7)中遇到了AutoLayout问题。 这是非常基本的,非常重要,所以我认为每个人都应该知道这是如何正确工作的。 如果这是Xcode中的一个错误,那么它是非常关键的一个! 所以,每当我有这样的视图层次结构,我遇到了麻烦: 的UIViewController 的UIView UIScrollView中 UILabel(或任何其他可比的UIKit元素) UIScrollView有严格的约束条件,例如,从每边50像素(没问题)。 然后,我添加顶部空间约束UILabel(没问题)(我甚至可以钉高度/宽度的标签,什么都不改变,但由于标签的固有尺寸,应该是不必要的) 当我向UILabel添加尾随约束时,麻烦就开始了: 例如,尾随空间:Superview等于:25 现在发生了两个警告 – 我不明白为什么: A)可滚动内容大小歧义(滚动视图具有不明确的可滚动内容高度/宽度) B)放置错位的视图(标签预期:x = -67实际:x = 207 我在一个新的项目中做了这个小例子,你可以下载并附上截图。 如您所见,Interface Builder期望Label位于UIScrollView的边界之外(橙色的虚线矩形)。 使用“解决问题工具”更新标签的框架即可在此处移动。 请注意:如果用UIViewreplaceUIScrollView,则行为与预期的一样(标签的框架是正确的,并且是根据约束)。 所以似乎或者是UIScrollView的问题,或者我错过了一些重要的东西。 当我运行应用程序而没有更新IBbuild议的标签框架时,它的位置就好,它应该在哪里,UIScrollView是可以滚动的。 如果我更新框架的标签不见了,UIScrollView不滚动。 帮助我Obi-Wan Kenobi! 为什么模糊的布局? 为什么错位的观点? 你可以在这里下载示例项目,并尝试如果你能弄清楚发生了什么事情: https : //github.com/Wirsing84/AutoLayoutProblem