如何使UIStackView的元素居中对齐

问题描述 投票:0回答:2

我想实现的目标

在以下情况下如何将元素置于UIStackview的中心?

  • 使用情节提要

  • 轴是水平的

  • 对齐是填充

  • 分布正在填充

  • 间距为0

  • UIStackView具有三个具有不同长度字符串的UILabel

  • 前后约束等于超级视图(与屏幕宽度相同)

enter image description here

问题

如果我将中心水平线的约束添加到超级视图并删除前导和尾随约束,这似乎还可以,但是由于没有前导和尾随约束,我将退出屏幕。

我尝试过的

我已经尝试更改UIStackView的Alignment,Distribution,Spacing,但这没有帮助。另外,我找不到Google提供的任何解决方案或最佳做法。

ios swift storyboard uistackview
2个回答
0
投票

您的意思是这样吗?

设置“对齐方式=填充”,分布=“等间距”。并确保将所有标签“布局”设置为“自动”,而不是“将蒙版转换为约束”。

如果您像上面的图片一样需要stackview后面的浅蓝色背景,只需将stackview设置在UIView内即可。我认为您不能将stackview延伸得那么远,并且也不能将其中的内容居中。

使前和尾约束> = 0,所以如果stackview太大,它将仍然受到约束。

enter image description here


0
投票

您可以在堆栈中添加两个间隔视图,这些视图将覆盖剩余空间

工作示例

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.