如果我的UIView的前100个在左120个在右120在第一个项目和第二个项目之间的关系到底如何工作。浏览完Apple文档后,每个关系都有一个线性表达式,表达式为。
firstItem.firstItemAttribute == secondItem.secondItemAttribute * multiplier + constant
对于具有相关性
的前导约束,使用此等式答案 0 :(得分:1)
因此,安全区域的“左侧” 到视图的“左侧” 等于120
,或者您的视图为{{1 }}从安全区域(位于右侧) 。
因此,视图的“左侧” 到安全区域的“左侧” 等于120
或安全区域的左侧是-120
分, 来自您的视图(向左)。
如果您将-120
更改为-120
,则会将安全区域120
pts的左侧边缘或视图左侧边缘的右侧放置120 pts,将视图从屏幕向左推。
编辑:
为了更加清晰...
使用“ SafeArea.Leading-> myView.Leading”,您说的是“将myView的左边缘从安全区域的左边缘放120点”
当您将它们交换到“ myView.Leading-> SafeArea.Leading”时,您说的是“将SafeArea的左侧边缘减去放置在距myView左侧边缘120点的位置” 。
通常,在使用Interface Builder时,您不必理会订单……因为您在视觉上布置元素,并且IB知道如何定义约束。
在代码中设置约束时,更常见的是 见 。
例如,将一个子视图(红色)放在一个包含视图(蓝色)内,在所有四个侧面上都填充20点,如下所示:
您的代码可能看起来像这样:
+120
您会注意到,内部视图的 跟踪 和 底部 约束必须为负,因为您希望它们与容器视图的尾部和底部边缘相距20点。