我创建了一个NSMutableAttributedString对象,该对象由2个不同的NSMutableAttributedString对象组成:
NSMutableAttributedString * ob1 = [[NSMutableAttributedString alloc] initWithString:@"Headline"];
[ob1 addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Arial" size:25.0] range:NSMakeRange(0,8)];
[ob1 addAttribute:NSForegroundColorAttributeName value:[UIColor colorWithRed:1.0 green:0.0 blue:0.0 alpha:1.0] range:NSMakeRange(0,8)];
NSMutableAttributedString * ob2 = [[NSMutableAttributedString alloc] initWithString:@"Test"];
[ob2 addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Arial" size:25.0] range:NSMakeRange(0,4)];
[ob2 addAttribute:NSForegroundColorAttributeName value:[UIColor colorWithRed:0.3 green:0.3 blue:0.0 alpha:1.0] range:NSMakeRange(0,4)];
[ob1 appendAttributedString:ob2];
self.aUITextViewObj.attributedText = ob1;
我的问题是:文本几乎每次都在UITextView中显示准确。 但有时它的字体大小会变大。这完全是偶然的,似乎没有规则。显示正确的相同文本下次显示得太大。 我想通了什么:
答案 0 :(得分:1)
我没有发现问题,但我找到了解决方案。
开始时我在viewDidLoad方法中设置字体大小。似乎有些东西在这个方法之后再次改变了字体大小。
但是在viewWillAppear方法之后没有触及字体大小。 所以我再次在这个方法中设置字体大小。
现在文字显示正确。
我希望这可以帮助其他人解决这个问题,但我仍然对这种情况发生的原因感兴趣。 可能是记忆问题。