在iOS6上的UITextView上使用attributedText(NSAttributedString)仅适用于段落样式或字体,但不能同时使用

时间:2012-11-08 22:13:10

标签: ios ios6 uitextview nsattributedstring css

我一直在尝试使用UITextView的attributedText属性为我的自定义UITextView添加可调整行高。我的代码在模拟器中运行良好,但我无法在iPhone5上运行。如果我删除行高度的字体行,但文本将恢复为默认的较小字体。如果我添加字体,字体可以工作,但段落样式将被忽略。我在一个新的应用程序中尝试了香草UITextView上的代码具有相同的行为,这让我觉得这是一个iOS6错误。有没有人有更好的运气?

我还尝试了各种UITextView替换来添加行高功能,但到目前为止还没有任何功能。

我的代码如下所示:

...
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
paragraphStyle.minimumLineHeight = lineHeight;
paragraphStyle.maximumLineHeight = lineHeight;

NSString *text = self.text;
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:text];

[attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, text.length)];
[attributedString addAttribute:NSFontAttributeName value:self.font range:NSMakeRange(0, text.length)];

self.attributedText = attributedString;

感谢任何人的确认或建议!

1 个答案:

答案 0 :(得分:3)

我认为这确实是一个错误。过去几天我一直在努力,但找不到任何合理的解释。

此外,如果您使用IB设置UITextView,则其中一些属性将不会按原样设置。

无论如何,我刚刚提交了一个错误。 http://openradar.appspot.com/radar?id=2278401

马特