行数

当你制作标签并将其文本设置为可以显示的多行时,它将被截断,你将只看到一行以三个点(…)结尾的文本。这是因为名为 numberOfLines 的属性设置为 1,因此只显示一行。处理 UILabels 是一个常见的错误,许多人认为它是一个 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。这样,我们可以获得与上述代码相同的结果。

如下所示:

StackOverflow 文档