行数
当你制作标签并将其文本设置为可以显示的多行时,它将被截断,你将只看到一行以三个点(…)结尾的文本。这是因为名为 numberOfLines
的属性设置为 1,因此只显示一行。处理 UILabel
s 是一个常见的错误,许多人认为它是一个 bug,或者他们可能会使用多个标签来显示多行文本,但只要编辑这个属性,我们就可以告诉 UILabel
接受达到指定的行数。例如,如果此属性设置为 5,则标签可以显示 1,2,3,4 或 5 行数据。
以编程方式设置值
要设置此属性,只需为其指定一个新整数:
迅速
label.numberOfLines = 2
Objective-C
label.numberOfLines = 2;
注意
可以将此属性设置为 0.但是,这并不意味着它不会接受任何行,而是意味着标签可以根据需要包含尽可能多的行(也称为
Infinity
):
迅速
label.numberOfLines = 0
Objective-C
label.numberOfLines = 0;
注意
如果标签具有高度约束,则将遵守约束。在这种情况下,
label.numberOfLines = 0
可能无法按预期工作。
注意
对于更复杂的多行文本, UITextView 可能更适合。*
在 Interface Builder 中设置值
你可以使用 Storyboard
或 .xib
来设置 numberOfLines
属性,而不是以编程方式设置 numberOfLines
。这样,我们可以获得与上述代码相同的结果。
如下所示: