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

j0h*_*n3s 1 ios autolayout

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

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

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

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

所以现在问题是如下.有时视图按预期呈现,但有时呈现的方式不同: 错误的UILabels

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

最好的祝福

Wai*_*ain 7

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

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