如果我在TTTAttributedLabel示例应用程序“Espresso”中将linebreakmode设置为截断尾部,看起来它应该是在iOS 5模拟器中,但如果我在iOS 6模拟器中运行应用程序,文本会在第一行之后被截断,尽管文本会出现超过3行。行数设置为零。我错过了什么?在Espresso应用程序中我注意到这种行为后,我可以不再担心我自己的应用程序中代码的破坏。 有什么建议?谢谢!
答案 0 :(得分:9)
我目前面临同样的问题。在实际设置文本之前尝试设置LineBreakMode。 E.g:
TTTAttributedLabel* descriptionLabel = [[TTTAttributedLabel alloc] initWithFrame:CGRectMake(20, 120, 280, expectedSize.height)];
descriptionLabel.lineBreakMode = UILineBreakModeWordWrap;
descriptionLabel.numberOfLines = 0;
descriptionLabel.text = description;
答案 1 :(得分:1)
iOS 6中的标签和文本视图本身支持归属文本。因此,如果您不需要支持旧版本的iOS,则可以摆脱第三方控制。
答案 2 :(得分:1)
在我的情况下,由于某些原因,下面的代码导致标签只显示一行。删除它有帮助 'self.attributedLabel.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;'
答案 3 :(得分:0)
奇怪的是问题解决了。我无法弄清楚为什么这个特殊问题会在iOS6模拟器上发生,但现在它适用于iOS6设备和模拟器上的NSLineBreakTailTruncation。
感谢您的回复!
答案 4 :(得分:-1)
你可以尝试一下。
NSMutableAttributedString * mutableAttributedString = [[NSMutableAttributedString alloc]initWithString:text];
[self.attributedLabel setText:mutableAttributedString afterInheritingLabelAttributesAndConfiguringWithBlock:nil];