使用富文本修改字体的风格NSMuttableAttstring

来源:互联网 发布:mac 调整鼠标指针大小 编辑:程序博客网 时间:2024/06/05 22:40
  1. 实例化方法和使用方法

实例化方法:

使用字符串初始化

- (id)initWithString:(NSString *)str;

例:

NSMutableAttributedString *AttributedStr = [[NSMutableAttributedStringalloc]initWithString:@"今天心情不错呀"];- (id)initWithString:(NSString *)str attributes:(NSDictionary *)attrs;字典中存放一些属性名和属性值,如:NSDictionary *attributeDict = [NSDictionarydictionaryWithObjectsAndKeys:                                    [UIFontsystemFontOfSize:15.0],NSFontAttributeName,                                    [UIColorredColor],NSForegroundColorAttributeName,                                   NSUnderlineStyleAttributeName,NSUnderlineStyleSingle,nil];NSMutableAttributedString *AttributedStr = [[NSMutableAttributedStringalloc]initWithString:@"今天心情不错呀" attributes:attributeDict];
- (id)initWithAttributedString:(NSAttributedString *)attester;

使用NSAttributedString初始化,跟NSMutableString,NSString类似

使用方法:
为某一范围内文字设置多个属性

- (void)setAttributes:(NSDictionary *)attrs range:(NSRange)range;

为某一范围内文字添加某个属性

- (void)addAttribute:(NSString *)name value:(id)value range:(NSRange)range;

为某一范围内文字添加多个属性

- (void)addAttributes:(NSDictionary *)attrs range:(NSRange)range;

移除某范围内的某个属性

- (void)removeAttribute:(NSString *)name range:(NSRange)range;
  1. 常见的属性及说明

NSFontAttributeName
字体
NSParagraphStyleAttributeName
段落格式
NSForegroundColorAttributeName
字体颜色
NSBackgroundColorAttributeName
背景颜色
NSStrikethroughStyleAttributeName
删除线格式
NSUnderlineStyleAttributeName
下划线格式
NSStrokeColorAttributeName
删除线颜色
NSStrokeWidthAttributeName
删除线宽度
NSShadowAttributeName
阴影

例子:

_WebView = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, 320, 600)];    [self.view addSubview:_WebView];NSString *originStr = @"Hello,中秋节!";    //方式一    //创建 NSMutableAttributedString    NSMutableAttributedString *attributedStr01 = [[NSMutableAttributedString alloc] initWithString: originStr];    //添加属性    //给所有字符设置字体为Zapfino,字体高度为15像素    [attributedStr01 addAttribute: NSFontAttributeName value: [UIFont fontWithName: @"Zapfino" size: 15] range: NSMakeRange(0, originStr.length)];//    //分段控制,最开始4个字符颜色设置成蓝色//    [attributedStr01 addAttribute: NSForegroundColorAttributeName value: [UIColor blueColor] range: NSMakeRange(0, 5)];    //分段控制,第5个字符开始的3个字符,即第5、6、7字符设置为红色    [attributedStr01 addAttribute: NSForegroundColorAttributeName value: [UIColor redColor] range: NSMakeRange(5, 1)];    [attributedStr01 addAttribute: NSForegroundColorAttributeName value: [UIColor orangeColor] range: NSMakeRange(6, 3)];    //赋值给显示控件label01的 attributedText    _WebView.attributedText = attributedStr01;

这里写图片描述
官方文档:https://developer.apple.com/library/ios/documentation/Cocoa/Reference/Foundation/Classes/NSMutableAttributedString_Class/index.html

0 0
原创粉丝点击