Ios 定义堆栈视图内视图的宽度?

Ios 定义堆栈视图内视图的宽度?,ios,swift,autolayout,uistackview,Ios,Swift,Autolayout,Uistackview,我想在stackview的帮助下创建一个类似图形的设计。我在stackview中添加了5个水平视图。现在我想做的是给一个单独的视图一些高度,使stack view的属性为等宽,但不知何故我做不到。我必须给stakview提供前导和尾随,基于前导和尾随内部视图已计算视图的宽度。但对于所有设备,as前导和尾随将是静态的。我试图给堆栈视图水平和垂直中心,但没有工作 这是我的限制 为什么我必须给出前导和尾随来计算stackview内部视图的内部宽度 为什么我不能对堆栈视图使用垂直和水平中心,并让堆栈

我想在stackview的帮助下创建一个类似图形的设计。我在stackview中添加了5个水平视图。现在我想做的是给一个单独的视图一些高度,使stack view的属性为等宽,但不知何故我做不到。我必须给stakview提供前导和尾随,基于前导和尾随内部视图已计算视图的宽度。但对于所有设备,as前导和尾随将是静态的。我试图给堆栈视图水平和垂直中心,但没有工作

这是我的限制

为什么我必须给出前导和尾随来计算stackview内部视图的内部宽度


为什么我不能对堆栈视图使用垂直和水平中心,并让堆栈视图使用我为单个视图定义的宽度?

设置堆栈视图的前导、尾随和顶部约束=0

设置stackview的高度约束

设置stackview分布特性=等间距

在宽度约束为0的stackview中的第一个位置添加附加视图

在宽度约束为0的stackview中的最后一个位置添加其他视图

将“五种颜色视图宽度约束”设置为“相等宽度”

将第一个彩色视图宽度属性设置为与主视图相同的宽度;乘数=1:11


您需要解决视图的模糊性,以便视图引擎能够准确地确定绘制视图所需的方式。引擎总是需要知道视图应该如何水平放置,因为在iPad的情况下,其他子视图必须扩展太多;所以,如果我们指定前导和尾随,它可以根据需要展开,或者如果我们希望它们的宽度增加不超过指定值,那么它可以在前导和尾随中留出一些空间,并限制展开。取决于你需要它的方式

我建议您将此图形视图的父级设置为相等宽度和相等高度(或提供类似于0.95的乘数),以便superview可以在所有屏幕尺寸上都能很好地显示

花些时间阅读歧义和冲突。这将有助于你在不费劲思考的情况下获得所需的视图