gpt4 book ai didi

ios - 对iOS约束的方向感到困惑

转载 作者:可可西里 更新时间:2023-11-01 03:33:02 25 4
gpt4 key购买 nike

我一直在研究 Matt Nueberg 的 Programming iOS 7 一书,并且正在努力理解带有约束方向的东西。在本书第 28 页的 multiplier, constant 部分,作者指出:

The first attribute is set to the result.

所以我读这个的方式是,当有两个项目约束时,项目 1 是基于项目 2 的值派生或依赖的。

所以我有一个 View 和一个 subview (按钮),我想让按钮水平居中。所以我安排了我的 View 和按钮,然后按住 control 键从按钮拖动到父 View :

enter image description here

并选择水平居中:

enter image description here

然后,如果我选择该约束,我会在右侧的属性检查器中看到以下内容:

enter image description here

这将 super View 显示为项目 1,将按钮显示为项目 2。这是否意味着它会尝试调整 super View 的中心以匹配按钮的中心?那不是我想要的。还是我误解了第 1 项和第 2 项的含义?或者这是否意味着我向后控制拖动,您应该从依赖项拖动到依赖项,而不是像我那样从依赖项拖动到依赖项?

我假设顺序确实很重要,即哪个是第 1 项,哪个是第 2 项。因为有一个菜单选项可以交换两者。如果它只是一个求解器,对调整的内容没有偏好,那就没有必要了。

最佳答案

您确实以正确的方式拖动关联(这就是菜单选项列出center in container 的原因)。

第一项是应用约束的项目。当您想要将 View 置于其容器的中心时,约束将应用于容器,而不是 subview 。

假设您正在应用约束以将 View 的顶部链接到顶部布局指南的底部。在这种情况下,约束应用于 View ,因此它是第 1 项,布局指南是第 2 项。

引擎只是一个求解器,但在某些情况下顺序很重要。如果 2 个项目被标记为相等,那么哪个在先并不重要。但是,如果约束有乘数,那么顺序很重要 - 就像纵横比约束一样,顺序决定了宽度和高度。

关于ios - 对iOS约束的方向感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22674870/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com