这是什么疯狂的自动布局逻辑?
What insane Autolayout logic is this?
我创建了一个新的视图控制器。
我给它添加了一个垂直堆栈。间距 = 0,对齐方式 = 中心 X,均匀填充。我用 space = 0.\
将它限制在其父视图的 4 个边缘
我在主堆栈中添加了 3 个水平堆栈。
对于每个水平堆叠:对齐 = 居中 Y,均匀填充,间距 0。
我在这 3 个堆栈中的每一个中添加了两个自定义视图。
我将这些堆栈之一的宽度限制为主堆栈的宽度。
结果很疯狂。
天哪,结果不是这样的吗?
除了外部(垂直)堆栈视图的顶部、前导、底部和尾随约束外,您不需要任何 约束。确保将 alignment
属性 设置为 Fill
并将 distribution
属性 设置为 Fill Equally
for all(垂直和水平)堆栈视图。
结果:
我找到了解决方案:您必须在每个自定义视图中添加一个约束,使其堆栈视图的高度相等。
我创建了一个新的视图控制器。
我给它添加了一个垂直堆栈。间距 = 0,对齐方式 = 中心 X,均匀填充。我用 space = 0.\
将它限制在其父视图的 4 个边缘我在主堆栈中添加了 3 个水平堆栈。
对于每个水平堆叠:对齐 = 居中 Y,均匀填充,间距 0。
我在这 3 个堆栈中的每一个中添加了两个自定义视图。
我将这些堆栈之一的宽度限制为主堆栈的宽度。
结果很疯狂。
天哪,结果不是这样的吗?
除了外部(垂直)堆栈视图的顶部、前导、底部和尾随约束外,您不需要任何 约束。确保将 alignment
属性 设置为 Fill
并将 distribution
属性 设置为 Fill Equally
for all(垂直和水平)堆栈视图。
结果:
我找到了解决方案:您必须在每个自定义视图中添加一个约束,使其堆栈视图的高度相等。