UILabel高度取决于字体大小

时间:2017-10-10 15:54:20

标签: ios uitableview uilabel constraints uitableviewautomaticdimension

我在UILabel中使用UITableViewCell来显示标题。通常文本不会太长,因此字体大小可能很大。注意文本如何像正常一样填充UILabel的高度。

enter image description here

但是,当标题较大时,我希望UILabel高度减小以适应较小的字体大小,并且不会在其位置留下空白。目前,我的配置产生了这种效果。

enter image description here

我在故事板中使用约束,故意不设置固定高度约束。以下是添加的相关约束:

enter image description here

我可能在我的配置中出现了一个新手错误,因为我无法记住之前发生的这种影响,但它给了我真正的头痛(以及一个看起来不好的用户界面)。

3 个答案:

答案 0 :(得分:0)

删除Top SpaceBottom Space约束(取决于您希望锚定标签的位置)。

这将导致标签自动使用适合文本大小。

答案 1 :(得分:0)

试试这个,看看它应该根据你的需要运作:

enter image description here

设置顶部和底部约束属性Greater Than or Equal To并添加水平中心(Alight Center Y到superview)并显示在此图像中。

答案 2 :(得分:0)

UILabel设置为自动调整字体大小以适应时,它不会自动调整自身的 高度

您有几个选择:

  1. 将基线设置为对齐中心,并接受您将具有顶部和底部填充

  2. 使用代码计算“缩放字体大小”并更新标签的字体大小