我正在使用Objective-C开发iOS应用程序,遇到了一个关于UILabel的问题,希望能得到一些帮助。基本上,我有一个标签,可以根据要显示的文本更改大小,但它有可能达到的最大高度。标签本身始终具有固定的宽度。我已经打开了UILineBreakModeWordWrap和UILineBreakModeTailTruncation以使文本适合并截断,但当只剩下一个单词时,这会导致文本过早地截断尾部。而不是在还有空间的情况下将其移动到下一行,它只是截断它。
self.frame = CGRectMake(self.frame.origin.x, self.frame.origin.y, fixedWidth, 0);
self.lineBreakMode = UILineBreakModeWordWrap | UILineBreakModeTailTruncation;
self.numberOfLines = 0;
[self sizeToFit];
有没有办法找出 UILabel 实际截断文本的时间,以便我可以检查标签高度并在有余地时添加高度?我尝试在有余地时总是添加一行额外的高度,这避免了早期截断,但最终标签大小不一致。如果有任何想法,请告诉我,谢谢。