Это не должно быть. Убедитесь, что шрифт одинаковый в обоих случаях, то есть при установке обычной строки и атрибута строки.
Используйте этот код в качестве ссылки:
Нормальный string-
self.textview.text= @"Lorem ipsum dolor sit er elit lamet, attributed string eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, attributed string quis nostrud exercitation ullamco laboris nisi attributed string ut aliquip ex ea commodo consequat.";
self.textview.font= [UIFont systemFontOfSize:15.0f];
Приписываемые string-
NSMutableAttributedString* string= [[NSMutableAttributedString alloc] initWithString:@"Lorem ipsum dolor sit er elit lamet, attributed string eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, attributed string quis nostrud exercitation ullamco laboris nisi attributed string ut aliquip ex ea commodo consequat."];
[string addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(0,50)];
[string addAttribute:NSForegroundColorAttributeName value:[UIColor greenColor] range:NSMakeRange(50,100)];
[string addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:15.0f] range:NSMakeRange(0,string.length)];
[self.textview setAttributedText:string];
Я использую setAttributedText, чтобы шрифт не был таким же для моей входной строки. Как мне это сделать? –
В моем случае положение прокрутки остается таким же, но если есть какая-либо разница в шрифте, тогда можно увидеть небольшой прыжок в позиции прокрутки. Я не думаю, что это может быть исправлено, если вы вручную не прокрутите текст в программном виде. – atulkhatri