所以我正在以编程方式制作一个应用程序,并且我有一个包含多个标签的 View 。我想将这些标签均匀地分布在容器中,我知道这可以通过将每个标签的高度设置为容器的百分比来实现。
例如,如果我有 4 个标签,我可以将每个标签的高度设置为其所在容器高度的 25%。
但我面临的问题是,这只有在容器具有声明的恒定高度时才有可能(据我所知),即
myContainer.heightAnchor.contraint(equalToConstant: 20).isActive = true
myLabel.heightAnchor.constraint(equalTo: myContainer.heightAnchor, multiplier: 0.2).isActive = true
这样做,一切正常。但是,如果将容器高度设置为不是常数而是相对于其他东西,那么它就不起作用,即
myContainer.heightAnchor.contraint(equalTo: view.height, multiplier: 0.5).isActive = true
myLabel.heightAnchor.constraint(equalTo: myContainer.heightAnchor, multiplier: 0.2).isActive = true
//THIS DOES NOT WORK^
有谁知道如何让它工作,或者有其他方法可以将标签和其他元素均匀地分布在容器中(没有 Storyboard!)
谢谢。
最佳答案
您是否考虑过使用 UIStackView ?
我认为您需要做的就是创建堆栈 View ,将其固定到容器 View ,然后添加标签。这样做的好处是,如果您决定要添加或删除标签,它就可以正常工作,而无需调整所有标签约束。
关于ios - Swift:将容器 View 中的几个标签设置为容器的比率/百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42513734/