如何做在iOS多线UILabel?

我dynamic地填充标题(UILabel)。 有时它有点太长,IOS压缩字体以适应宽度。 有没有办法使用相同的字体大小做多行?

adjustsFontSizeToFitWidth设置为NO,将numberOfLines为0。

numberOfLines文档

此属性控制要使用的最大行数,以便将标签的文本放入其边界矩形中。 此属性的默认值为1. 要删除任何最大限​​制,并根据需要使用尽可能多的行,请将此属性的值设置为0。

如果使用此属性约束文本,则不符合最大行数和标签边界矩形内的任何文本将使用适当的换行符模式截断。

当使用sizeToFit方法调整接收器大小时,resize会考虑存储在此属性中的值。 例如,如果将此属性设置为3,那么sizeToFit方法会调整接收器的大小,使其足以显示三行文本。

除非默认的UILineBreakModeWordWrap适合您的需要,否则您可能还需要指定lineBreakMode

使用UILabel属性如下:

 textLabel.lineBreakMode = NSLineBreakByWordWrapping; textLabel.numberOfLines = 0; 

是的,您将numberOfLines设置为0,将.lineBreakMode UILineBreakModeWordWrap为代码中的.lineBreakMode ,或者在IB中定义标签时设置等效项。

我只是使用LineBreak模式截尾,setNumberOfLines为0,它为我工作。 现在标签是多行的。