iOS约束:如何给出UILabel高度约束优先级

时间:2016-07-21 11:11:33

标签: ios autolayout

我有以下问题: 我有一个固定高度的视图。在此视图中,有两个单线UILable。视图比两个标签都大,所以我希望它们显示如下: UIView with two UILabels

我添加了三个约束来实现这个目标:

  • 第一个标签顶部以查看顶部
  • 第二个标签顶部到第一个标签底部
  • 第二个标签底部以查看底部

(如果你愿意,我可以为此添加代码,但我认为这很明显)

所以现在问题出现了。有时视图按预期呈现,但有时呈现的方式不同: wrong UILabels

行为很随机。 我认为这是因为,两个UILabel都具有相同优先级的(自动生成的)高度约束。有时,第一个标签的尺寸正确,有时第二个标签会得到它。 那么有没有办法改变那些自动生成的高度约束的优先级或实现这种布局的另一种方式? (我不想使用第二个UILabel的容器视图)

最好的问候

1 个答案:

答案 0 :(得分:5)

你的约束是模糊的,因此是随机的结果。您尚未指定如何使用高度。

您应该通过将顶部标签的垂直拥抱优先级设置为高于底部标签的垂直拥抱的值来指定。