在UILabel调整大小后强制执行文本截断

时间:2012-06-29 11:33:28

标签: iphone objective-c uilabel

我有UILabel在应用运行时期间可以有各种宽度。 UILable中的文字可能比UILabel本身更宽,因此文字有时会被截断。

问题是在UILabel调整大小后文本不会被重新截断,因此它要比UILabel更宽或更窄。

如何强制UILabel再次重新截断文字以使其完美契合?

2 个答案:

答案 0 :(得分:0)

要使UILabel框架与您可以使用的文本匹配:

[myLabel sizeToFit];

但是UILabel可能对于它的容器视图(Controller的视图或子视图)来说太大了,在这种情况下你可能想要计算文本大小并相应地调整标签大小

CGSize labelSize = [messageText sizeWithFont:myLabel.font constrainedToSize:CGSizeMake(myLabel.frame.size.width, MAXFLOAT) lineBreakMode:myLabel.lineBreakMode];

要使用此功能,您需要将标签的numberOfLines设置为0;

答案 1 :(得分:0)

对不起,我的代码中其他地方确实有一个错误,所以问题现在已经关闭。