Ändern der Attribute von Teilstrings in einem NSAttributedString

Diese Frage kann ein Duplikat der diese eine. Aber die Antworten, die don T Arbeit für mich, und ich möchte, um genauer zu sein.

Ich habe eine NSStringaber ich brauche eine NS(Mutable)AttributedString und einige von den Wörtern in diesem string sollte gegeben werden, eine verschiedene Farbe. Ich versuchte dies:

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]];

Dem "und" sollte groß geschrieben werden eine rot.

Die Dokumentation sagt, dass mutableString hält die Attribut-Zuordnungen. Aber mit meinem Ersatz-Ding habe ich nicht mehr attributedString auf der rechten Seite der Zuweisung (in der letzten Zeile von meinem code-snippet).

Wie kann ich das bekomme, was ich will? 😉

InformationsquelleAutor der Frage mjay | 2013-07-05

Schreibe einen Kommentar