当前行为

我有一个带有特定大小的矩形框架的 multiLine UILabel
字体和所有内容都设置为将显示 MAX 的三行,超出此范围将被截断。

异常行为

异常行为是有时我确实有一个完整的行或两个剩余但行被截断。这是因为该行末尾的单词太大而无法放入该行末尾。

预期行为

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

这是我当前的代码

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

最佳答案

使用另一种换行模式。

[_detailedTextLabel setLineBreakMode:NSLineBreakByWordWrapping];

并确保标签具有适当的高度(假设 width 已经设置):
CGSize size = [_detailedTextLabel sizeThatFits:CGSizeMake(width, CGFLOAT_MAX)];
_detailedTextLabel.frame = CGRectMake(0, 0, size.width, size.height);

关于ios - UILabel 即使有剩余行也会截断,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16608901/

10-12 14:33
查看更多