对于iOS中不同大小的视图,约束“相等的高度”?

时间:2017-04-17 16:02:46

标签: ios layout constraints nslayoutconstraint equal-heights

我看到了很多类似的问题,但它们都适用于观点相同的情况。

在我的情况下,我有一个垂直的视图堆栈: enter image description here 他们应该同时保持比例在不同的设备上。

您能否建议如何实现这一目标? Xib或以编程方式 - 它没有任何可能性。

目前我正在尝试手动设置尺寸。

2 个答案:

答案 0 :(得分:1)

定义相等的高度约束,而不是编辑它并将乘数设置为例如“1:5”

Example

<强>更新

选择垂直堆栈视图,添加4个视图,标记所有视图,设置约束“相等高度”并添加所有3个约束:

Step 1

现在选择每个约束并根据您的喜好设置第一个约束:

Step 2

Step 3

Step 4

在堆栈视图设置中定义间距:

Step 5

相对于边距或通过const值定义StackView边框间隙:

Step 6

您不需要更多约束。通过更改设备和方向证明:

enter image description here

答案 1 :(得分:0)

上面的答案很好,但是我又增加了一种不使用堆栈视图而使用相等高度的方法。

在主视图上添加所需的视图数。

enter image description here

赋予Top,Leading,Trailing约束零至1st,2nd,3rd视图,并赋予Leading,Trailing,bottom约束零至最后视图。

现在ctrl +从第一个视图拖动到第二个视图,并提供相等的高度和垂直空间。对第二至第三和第三至第四视图重复这些步骤。

然后一一选择所有高度限制并将乘数设置为1以获得相等的高度视图。

enter image description here

玩乘法器以更改视图高度。

谢谢:)