NSAttributedString是一个带有属性的字符串,通过该类可以灵活地操作和呈现多种样式的文字数据。
NSTextStorge是NSMutableAttributedString的子类,UITextView中的 textStorage 属性为 NSTextStorge 类型。
NSString *string = @"你知道怎么在一个label设置不同的颜色嘛?";
NSMutableAttributedString
*attrString = [[NSMutableAttributedString alloc] initWithString:string];
//设置颜色(NSForegroundColorAttributeName代表要设置颜色,
value代表值, range 代表范围)
/**
其他设置:
1.NSForegroundColorAttributeName //颜色
2.NSFontAttributeName //字体
3.NSBackgroundColorAttributeName //背景色
//还有其他的很多的属性,可以自己去看苹果的API,这里不再详述
*/
[attrString addAttribute:NSForegroundColorAttributeName
value:[UIColor customBlueColor] range:NSMakeRange(1, 3)];
//3.添加到Label中
UILabel *label = [[UILabel alloc] init];
label.textColor = [UIColor customGrayColor];
label.frame = CGRectMake(0, 200, 280, 40);
[label setAttributedText:attrString];
[label sizeToFit];
[self.window addSubview:label];
// 添加与移除属性
UIColor *myColor = [UIColor redColor];
[self.myTextView.textStorage addAttribute:NSForegroundColorAttributeName
value:myColor
range:self.myTextView.selectedRange];
[self.myTextView.textStorage removeAttribute:NSForegroundColorAttributeName
range:self.myTextView.selectedRange];
常用属性
NSBackgroundColorAttributeName文字背景的颜色
NSBaselineOffsetAttributeName设置行距
NSForegroundColorAttributeName文字颜色
NSUnderlineStyleAttributeName为文字添加下划线。必须设置NSNumber对象为Value
本文详细介绍了如何使用NSAttributedString在iOS Label中设置文本的不同颜色,包括颜色设置、添加到Label的方法以及如何实现文本的动态颜色变化。
2579

被折叠的 条评论
为什么被折叠?



