使用 AutoLayout 约束向 UIView 添加填充
Adding padding to a UIView using AutoLayout constraints
想象一个简单的 UIView,就像下面的蓝色全宽容器。它包含一个红色框和一个黄色框。
红色和黄色框从容器中插入 10px(我知道它在图像中看起来不像。请原谅我的垃圾图)。我可以通过在与 UIView(蓝色)相关的黄色框上设置一个左约束来实现这一点,常数为 10.0。
然而这是正确的吗?我应该使用 LayoutMargins 属性 还是 XXXXMargin 布局属性?许多例子我都见过简单的从左或右偏移
相对于边距的布局是 iOS 8 独有的功能,您看到的将约束设置为简单偏移的示例可能是 iOS 8 之前的。如果您的目标是iOS 8只,那就一定要用边距。为此,将蓝色容器的 layoutMargins
属性 设置为 UIEdgeInsetsMake(0, 10, 0, 10)
以将左右边缘填充 10,或者设置 NSLayoutAttributeLeftMargin
和 NSLayoutAttributeRightMargin
属性,然后将黄色和红色框约束到这些边距。有关详细信息,请参阅 this writeup。
想象一个简单的 UIView,就像下面的蓝色全宽容器。它包含一个红色框和一个黄色框。
红色和黄色框从容器中插入 10px(我知道它在图像中看起来不像。请原谅我的垃圾图)。我可以通过在与 UIView(蓝色)相关的黄色框上设置一个左约束来实现这一点,常数为 10.0。
然而这是正确的吗?我应该使用 LayoutMargins 属性 还是 XXXXMargin 布局属性?许多例子我都见过简单的从左或右偏移
相对于边距的布局是 iOS 8 独有的功能,您看到的将约束设置为简单偏移的示例可能是 iOS 8 之前的。如果您的目标是iOS 8只,那就一定要用边距。为此,将蓝色容器的 layoutMargins
属性 设置为 UIEdgeInsetsMake(0, 10, 0, 10)
以将左右边缘填充 10,或者设置 NSLayoutAttributeLeftMargin
和 NSLayoutAttributeRightMargin
属性,然后将黄色和红色框约束到这些边距。有关详细信息,请参阅 this writeup。