Как установить цвет нескольких шрифтов в точке рисования UIlabel.
Я пытался использовать приведенный ниже код для изменения атрибута шрифта, но я не знаю, как установить NSMutableAttributedString для этого, поскольку он принимает только NSDictionary
[self.textColor setFill];
[self.text drawAtPoint:rect2.origin withAttributes:attrName];
Мы используем это для установки атрибута
NSMutableAttributedString *attrsString =
[[NSMutableAttributedString alloc]
initWithAttributedString:"String1/String2"];
// search for word occurrence
NSRange prange = [lbl.text rangeOfString:@"String1"];
NSRange lrange = [lbl.text rangeOfString:@"String2"];
if (prange.location != NSNotFound) {
[attrsString addAttributes:attributeGreen range:prange];
[attrsString addAttributes:attributeRed range:lrange];
}
lbl.attributedText = attrsString;
Первоначально мы используем это в подклассе UILabel - этот подкласс используется для изменения размера текста.
[self.textColor setFill];
[self.text drawAtPoint:rect2.origin withFont:tmpfont];
Iожидается, что строка String1 выделена зеленым шрифтом, а строка String 2 красным шрифтом