在视图中添加多个UILabel,它们之间的高度恒定

时间:2015-08-31 12:53:45

标签: ios uilabel nslayoutconstraint ios-autolayout

我正在尝试使用自动布局在UILabel's中添加一些5-6 UIView(仅限单行)。我添加了constraints作为最顶层&最底部UILabel。问题是可变屏幕尺寸。

只是想知道一种更好的方法来添加那些剩余的(3-4)中间UILables(因为我想在所有UILabels之间显示相等的空格。)

方法1 - 为中间标签添加高度常数&基于屏幕大小在运行时更改高度约束constat。

方法2 - 我尝试添加> =和< = constarints但我没有按照需要获得输出。

任何帮助,如何在所有UILabel之间保持恒定的高度。

(可以通过UIScrollViewUITableView实现,但我不想滚动..仅使用自动布局:))

3 个答案:

答案 0 :(得分:1)

您可以在UIView之间添加虚拟UILabel并设置这些虚拟视图'高度与容器成比例。 或者你应该能够通过在运行时设置当前约束常量然后调用setNeedsLayout& layoutIfNeeded

来实现这一点。

你不能通过玩"小于"来实现这一目标。或者"大于"约束

编辑:你也可以使用this在iOS9.0 +

上执行此操作

答案 1 :(得分:1)

您可以使用左侧窗口中的堆栈视图,其中您有按钮/标签/视图等.....或者您也可以使用约束工具添加它(参见附图enter image description here

答案 2 :(得分:0)

iPhone 5s

iPhone 6 plus

如果您正在寻找附加的解决方案,请在第三张图片中添加以下约束。

Note * you can change the constant value as per your requirement.