UILabel AutoLayout适合

时间:2014-12-03 11:22:42

标签: ios uilabel autolayout

我有一个表格单元格,它有一个描述和一个标题标签。我想描述标签,使文本最多3行,标题做同样但最多2行。这我可以实现。我所遇到的问题是让描述坚持到底部,而标题上的标题如下所示。

我找到了一个用框架做的解决方案,但我想知道是否有可能通过自动布局实现这个

Example1

example2

2 个答案:

答案 0 :(得分:4)

使用自动布局,您可以通过设置以下约束来实现它。

  1. 为描述标签设置常量前导,尾随和底部空间约束。
  2. 为标题标签的描述标签设置常量前导,尾随,垂直间距。
  3. 为描述,标题标签设置恒定高度约束。

  4. 选择说明标签并转到尺寸检查器,将内容拥抱优先级,内容压缩阻力优先级垂直值设置为1000.

  5. 在这些优先级下方的尺寸检查器中,您可以看到约束。 单击高度约束右侧的向下箭头,然后选择“选择并编辑”。 并设置优先级低于1000.(比如说800)。默认情况下,它将为1000。

  6. 对标题标签重复步骤4,5。

  7. 在属性检查器中,为标题lanel将“Lines”设置为2,为描述标签设置3。 (如果将行设置为0,则会显示完整内容)

  8. 希望这有帮助。

答案 1 :(得分:1)

是的,您可以在故事板中为TitleLabel选择 NumberOfLines 属性为 0 ,并根据需要选择LineBreks意味着它会根据文本自动适合任意数量的行addsConstraints名为leadingSpaceToContainerMargin,TopSpace To TopLayoutGuide,Width设置为Equal,Height设置为GreaterThanOrEqual。

对于描述标签,还要为TitleLabel设置 NumberOfLines 属性为 0 ,并根据需要选择LineBreks并添加约束,如leadingSpaceToContainerMargin,VerticalSpacing,Width设置为Equal,Height为设置为GreaterThanOrEqual。