拉伸 UIStackView 中的最后一个元素

Posted

技术标签:

【中文标题】拉伸 UIStackView 中的最后一个元素【英文标题】:Stretch the last element in UIStackView 【发布时间】:2017-06-21 16:33:29 【问题描述】:

我有垂直的UIStackView,它有两个水平的UIStackViews,如果底部UIStackView 的宽度大于顶部的UIStackView,那么顶部的UIStackView 将被拉伸到底部@987654330 的宽度@。

现在我拉伸了顶部UIStackView 中的第一个元素,但我想拉伸最后一个元素。

当前:

预期:

我怎样才能做到这一点?

【问题讨论】:

不太清楚你想要什么......“外部”堆栈视图是固定宽度吗?还是根据“gtfdgsd ...”的长度拉伸?底行是两个按钮吗?左按钮是固定宽度吗?还是应该拉伸?还是有固定的左右填充?您希望两个顶行标签都根据内容进行拉伸吗?如果两个标签的组合宽度超过了底行的宽度会怎样? @DonMag 感谢您的评论。外部堆栈视图基于约束进行拉伸。是的,底部堆栈有两个按钮。底部堆栈有什么无关紧要,因为我只想要下一个简单的行为:现在,我的第一个标签填充顶部堆栈中的所有可用空间,所有其他标签都适合内容,但我希望最后一个标签填充所有可用空间,和所有其他(包括第一张)适合内容,如第二张图片所示。 【参考方案1】:

假设您的标签将默认水平 Content Hugging Priority 设置为每个 251,请将绿色标签更改为 252

您应该可以保留所有其他内容。

【讨论】:

以上是关于拉伸 UIStackView 中的最后一个元素的主要内容,如果未能解决你的问题,请参考以下文章

将layoutMargins添加到UIStackView中的一个元素

将 layoutMargins 添加到 UIStackView 中的一个元素

水平 UIStackView 拉伸子视图

为啥图像视图会拉伸以填充 UIStackView 中宽度的一半?

iOS UI 元素在标签栏控制器中来回切换后被拉伸

FlexBox 对齐(拉伸)最后一个项目