如何在iOS中使用自动布局更改基于文本长度的UILabel宽度

时间:2016-06-14 04:18:18

标签: ios uilabel ios-autolayout

我想显示两个UILabel,但UILabel具有可变文字长度' s根据文本大小UIlabel'使用自动布局需要增加宽度。

为此我写下了UIlabel'

的自动布局

第一个标签:

1)leading Space 
2)Top space
3)Width
4)height
5)Horizontal spacing

第二个标签:

1)Trailing space
2)Top space
3)Width
4)height

我们怎么做?

请帮帮我。

我的代码:

textLabel1.numberOfLines = 0
        textLabel1 .sizeToFit()
        textLabel1.text = "asdfdsfdghjgjhkhkjlhjkhjk"

textLabel2.numberOfLines = 0
        textLabel2 .sizeToFit()
        textLabel2.text = "asdfdsfdghjgjhkhkjlhjkhjk"

2 个答案:

答案 0 :(得分:4)

选择First UILabel,设置Leading,Top,bottom并设置固定宽度,然后转到 size Inspector - >选择固定宽度约束 - > 关系 - >选择大于或等于,示例如下所示,

enter image description here

enter image description here

选择第二个UILabel,设置前导,下限,固定宽度,然后执行相同的过程,

希望它有用

答案 1 :(得分:0)

首先,您需要将UILabel的属性numberOfLines设置为零,并将文本换行设置为自动换行。然后给出所需的约束。

如果您没有得到理想的结果,那么您需要通过boundingRectWithSize:...方法计算标签的动态高度,并相应地给出高度约束。