1

我有一个简单的案例:我有以下视图层次结构:

  1. 看法
    1. 滚动视图
      1. 看法
        1. 标签

我的标签位于它的超级视图的底部,它的高度是动态变化的,这取决于它正在呈现的文本的大小。

我的目标是根据文本调整标签大小,以便不截断任何文本,并随着标签行的增长,增加滚动视图的内容大小,使标签始终位于底部。

我如何使用自动布局来做到这一点,最好只来自 IB?

4

1 回答 1

0

如果您希望使用自动布局将UILabel其粘贴在其父级的底部UIView,那么当高度增加时该视图不会扩展其高度UILabel,真正发生的是UILabel它将向上移动以占据更多区域。

如果您希望UIView扩展,则不要在该 UIView 中使用自动布局,并将您的定位UILabel在恒定原点,然后根据文本更改视图的高度和滚动视图的高度UILabel

您可以使用以下代码行获取 UILabel 大小:

CGSize expectedLabelSize = [yourString sizeWithFont:yourLabel.font 
                        constrainedToSize:maximumLabelSize 
                        lineBreakMode:yourLabel.lineBreakMode];
于 2013-07-07T10:50:42.323 回答