Zmień atrybuty podciągów w łańcuchu NSAttributedString

To pytanie może być duplikatemten. Ale odpowiedzi nie działają dla mnie i chcę być bardziej szczegółowy.

mamNSString, ale potrzebujęNS(Mutable)AttributedString a niektóre słowa w tym ciągu powinny mieć inny kolor. Próbowałem tego:

NSString *text = @"This is the text and i want to replace something";

NSDictionary *attributes = @ {NSForegroundColorAttributeName : [UIColor redColor]};
NSMutableAttributedString *subString = [[NSMutableAttributedString alloc] initWithString:@"AND" attributes:attributes];

NSMutableAttributedString *newText = [[NSMutableAttributedString alloc] initWithString:text];

newText = [[newText mutableString] stringByReplacingOccurrencesOfString:@"and" withString:[subString mutableString]];

„I” powinny być wielkie, czerwone.

Dokumentacja mówi, że mutableString zachowuje odwzorowania atrybutów. Ale z moją rzeczą zastępczą nie mam już przypisanego ciągu po prawej stronie przypisania (w ostatnim wierszu mojego fragmentu kodu).

Jak mogę dostać to, czego chcę? ;)

questionAnswers(4)

yourAnswerToTheQuestion