困惑于iOS约束的方向
我一直在努力通过Matt Nueberg编程的iOS 7书籍,并努力理解与约束方向有关的东西。 在书的第28页,在multiplier, constant
部分,作者指出:
第一个属性设置为结果。
所以我读到这个的方式是,当有两个项目约束时,项目1根据项目2的值派生或依赖。
所以我有一个视图和一个子视图(按钮),我想将按钮水平居中。 所以我安排我的视图和按钮,然后控制 - 从按钮拖动到父视图:
并选择Center Horizontally
:
然后,如果我选择该约束,我会在右侧的属性检查器中看到以下内容:
这将超级视图显示为项目1,按钮显示为项目2.这是否意味着它会尝试调整超级视图的中心以匹配按钮的中心? 那不会是我想要的。 还是我误解了第1项和第2项的含义? 或者这是否意味着我做了控制 - 向后拖动,你应该像从前那样从依赖拖动到依赖,而不是从属到依赖?
我假设订单确实很重要,也就是说,这是第1项,哪一项是第2项。因为有一个菜单选项可以将两者互换。 如果它只是一个解决者而不偏好调整的内容,那就没有必要。
您确实以正确的方式拖动关联(这就是为什么列出centre in container
的菜单选项)。
第一个项目是约束应用到的项目。 如果要将视图置于其容器中,则约束将应用于容器,而不是子视图。
假设您正在应用约束将视图的顶部链接到顶部布局指南的底部。 在这种情况下,约束被应用到视图,所以它是项目1,布局指南是项目2。
引擎只是一个求解器,但是在某些情况下,这个命令很重要。 如果2个项目被标记为相等,那么哪个是第一项并不重要。 但是,如果约束有一个乘数,那么顺序就很重要 - 就像一个长宽比约束,其中顺序决定了什么被用作宽度和什么是高度。
链接地址: http://www.djcxy.com/p/19681.html