glo*_*gic 7 objective-c uilabel ios
我正在使用目标c在ios应用程序上工作,我与uilabel有一个问题,我可以使用一些帮助.基本上我有一个标签,可以改变大小以适应它将显示的文本,但它有一个可能的最大高度.标签本身始终具有固定的宽度.我已经打开了UILineBreakModeWordWrap和UILineBreakModeTailTruncation来使文本适合并截断,但这会导致文本在它只剩下1个单词时过早地截断尾部.而当它仍有空间时,它将它移动到下一行,它只是截断它.
self.frame = CGRectMake(self.frame.origin.x, self.frame.origin.y, fixedWidth, 0);
self.lineBreakMode = UILineBreakModeWordWrap | UILineBreakModeTailTruncation;
self.numberOfLines = 0;
[self sizeToFit];
Run Code Online (Sandbox Code Playgroud)
无论如何找到uilabel实际截断文本的时间,然后我可以检查标签高度,如果还有空间则添加它?当有空间时,我总是尝试在高度上添加一条额外的线,这样可以避免早期截断,但是我会在整个标签上留下不一致的尺寸.任何想法都会非常感谢
Ste*_*ton 13
lineBreakMode是一个开关.它可以是任何(对iOS6的+)NSLineBreakByWordWrapping或NSLineBreakByTruncatingTail,但不能同时使用.
但是,要回答您的问题,您可以使用类扩展来查找某些文本的大小NSString+UIKit.找到尺寸后,您可以更新相应的框架UILabel.
| 归档时间: |
|
| 查看次数: |
22569 次 |
| 最近记录: |