如何在StackView中设置相等宽度或相等高度?

时间:2016-10-06 02:29:16

标签: ios swift autolayout nslayoutconstraint

我这里有六个标签,每两个标签在水平视图中堆叠,所有水平视图都在垂直视图中堆叠,如下所示

Labels layout detail

Labels layout detail visually

以下是我想要的内容:无论每个标签的内容如何,​​我都希望将Label1的宽度设置为Label2的30%

外部堆栈视图设置为Aligment:Fill,Distribution:Fill Equally

所有内部堆栈视图都设置为Aligment:Fill,Distribution:Fill

我已将Label1的拥抱设置为250,默认为Label2(其他人也是如此)。

我试图在图2中用等宽度设置宽度。但它未被选中

我该怎么办?喜欢在故事板中完成所有工作,但在代码中工作也是可以的。

解决方案:只需选择两个标签即可添加约束,如下所示 Solution image

1 个答案:

答案 0 :(得分:5)

IMO,Stack View不允许在其中提供视图的一些固定帧大小,我们可以使用可用属性对其进行控制。
堆栈视图用于将类似内容限制在一个视图中。< / p>

方法

  • 将您的标签放在一个视图(内容视图)中。
  • 右标签的宽度设置为等于左标签,将乘数设置为0.30

Storyboard