如何在垂直轴上围绕 UIStackView 的中心均匀分布两个 subview ?
目前这两个标签都位于 StackView 的顶部和底部旁边。堆栈 View 是 simulator screen shot 上的灰色区域.
如何使它们均匀分布?
|
|
[UILabel]
|
|
[UILabel]
|
|
我已经尝试了不同的配置,但我得不到想要的结果。
这是我当前的代码:
let object = UIStackView()
object.translatesAutoresizingMaskIntoConstraints = false
object.alignment = UIStackViewAlignment.Center
object.axis = .Vertical
object.distribution = UIStackViewDistribution.EqualSpacing
最佳答案
考虑到您为 UIStackView 设置了类似的属性(如问题中所述)
alignment -> Center
axis -> Vertical
distribution -> Equal Spacing
可以通过在 UIStackView 的两端引入两个高度约束设置为 0 的空 View 来实现解决方案。
解释
在添加两个高度为 0 的空 View 时,我们告诉 UIStackView 我们有 4 个 View 而不是 2 个。
现在 UIStackView 将在所有 View 和输出之间添加相等的间距。
您可以通过查看 UIStackView 的高度和标签的位置来交叉验证它。
希望这有帮助!!!
关于ios - 如何围绕 UIStackView (iOS 9) 的中心均匀分布两个 subview ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37069305/