NSAttributedString是一个带有属性的字符串,通过该类可以方便地设置文字的style,如颜色、字体等。
NSMutableAttributedString是NSAttributedString的子类,UITextView的属性textStorage也是NSAttributedString的子类,可以方便灵活地设置富文本框里各种文字的各种style。
- (instancetype)initWithString:(NSString *)str; //使用字符串初始化
- (instancetype)initWithString:(NSString *)str attributes:(nullableNSDictionary<NSString *,id> *)attrs; //使用字符串和属性字典初始化
- (instancetype)initWithAttributedString:(NSAttributedString *)attrStr; //使用属性字符串初始化
- (void)addAttribute:(NSString *)name value:(id)value range:(NSRange)range;//为某一范围内文字添加某个属性
- (void)addAttributes:(NSDictionary<NSString *,id> *)attrs range:(NSRange)range;//为某一范围内文字添加某些属性
- (void)removeAttribute:(NSString *)name range:(NSRange)range;//为某一范围内文字移除某个属性
图片来自官网https://developer.apple.com/library/watchos/documentation/Cocoa/Conceptual/AttributedStrings/Articles/standardAttributes.html#//apple_ref/doc/uid/TP40004903-SW2
常用的属性:
NSBackgroundColorAttributeName //背景颜色
NSForegroundColorAttributeName //字体颜色
NSUnderlineStyleAttributeName //下划线格式
NSParagraphStyleAttributeName //段落格式
NSStrikethroughStyleAttributeName //删除线格式
NSKernAttributeName //字间距
NSStrokeColorAttributeName //描边颜色,需和描边宽度一起使用
NSStrokeWidthAttributeName //描边宽度,正数只描边,负数描边加填充。
NSShadowAttributeName //阴影,NSShadow
NSVerticalGlyphFormAttributeName //文本方向,0 横排文本。1竖排文本。在 iOS 中,总是使用横排文本0.
NSObliquenessAttributeName //文本倾斜
NSExpansionAttributeName //文本扁平化
3.发现一个写得很赞的:http://blog.csdn.net/hello_hwc/article/details/46731991