Ios NSMutableAttributedString字体大小意外更改
我创建了一个NSMutableAttributedString对象,它由两个不同的NSMutableAttributedString对象组成:Ios NSMutableAttributedString字体大小意外更改,ios,objective-c,ios6,ios6.1,Ios,Objective C,Ios6,Ios6.1,我创建了一个NSMutableAttributedString对象,它由两个不同的NSMutableAttributedString对象组成: NSMutableAttributedString * ob1 = [[NSMutableAttributedString alloc] initWithString:@"Headline"]; [ob1 addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Arial" si
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中准确显示。
但有时它的字体会变大。这完全是偶然的,似乎没有规则。下一次显示正确的文本显示得太大。
我发现:
- 问题不会出现在模拟器中李>
- 在iPhone4(iOS 6.1.3)上,90%的时间它都会出现。在iPhone 5(iOS 6.1.4)/IPad(iOS)上 6.1.3)大约有10%的时间会发生这种情况
- 我没有发现问题,但找到了解决办法
开始时,我在viewDidLoad方法中设置字体大小。似乎在再次使用此方法后,字体大小发生了变化
但是在viewWillExample方法之后,字体大小没有被改变。
所以我在这个方法中再次设置了字体大小
现在文本显示正确
我希望这能帮助其他人解决这个问题,但我仍然对发生这种情况的原因感兴趣。
可能是内存问题。我没有发现问题,但找到了解决方案 开始时,我在viewDidLoad方法中设置字体大小。似乎在再次使用此方法后,字体大小发生了变化 但是在viewWillExample方法之后,字体大小没有被改变。 所以我在这个方法中再次设置了字体大小 现在文本显示正确 我希望这能帮助其他人解决这个问题,但我仍然对发生这种情况的原因感兴趣。
可能是内存问题。文本中有特殊字符吗?我的文本中有“umlaute”öäü(我有几个文本,它们是从一个表中加载的。不是每个文本都包含ääöü),但问题不会影响文本的显示;)编辑:我忘了提到文本中的•(项目符号)和\n任何特殊字符?我的文本中有“umlaute”öäääääääääääääää(我有几个文本,它们是从一个表中加载的。不是每个文本都包含ää228编辑:我忘了提到•(项目符号)和\n