UILabel即使有剩余的行也会截断

时间:2013-05-17 12:20:32

标签: ios objective-c uilabel

当前行为

我有一个multiLine UILabel,其矩形框架具有特定大小。 字体和全部设置为显示三行的MAX,超出它将被截断。

例外行为

特殊行为是有时我确实有一个完整的行或两行,但行截断。这是因为该行末尾的单词太大而不适合该行的末尾。

预期行为

我希望UILabel填充所有三行,然后截断。

这是我目前的代码

[_detailedTextLabel setNumberOfLines:0];
[_detailedTextLabel setLineBreakMode:UILineBreakModeTailTruncation];
[_detailedTextLabel setAdjustsFontSizeToFitWidth:YES]; 

2 个答案:

答案 0 :(得分:3)

使用其他换行模式。

[_detailedTextLabel setLineBreakMode:NSLineBreakByWordWrapping];

并确保标签具有适当的高度(假设已设置width):

CGSize size = [_detailedTextLabel sizeThatFits:CGSizeMake(width, CGFLOAT_MAX)];
_detailedTextLabel.frame = CGRectMake(0, 0, size.width, size.height);

答案 1 :(得分:0)

尝试使用这个。你需要写这两行。

label.lineBreakMode = UILineBreakModeWordWrap;
label.numberOfLines = 0;