美文网首页
iOS富文本使用技巧

iOS富文本使用技巧

作者: 木子尚武 | 来源:发表于2017-05-11 11:33 被阅读90次

    使用目的:对一段文字设置较复杂的文本属性,比如同时设置字体大小\字体颜色\下划线
    使用方法:
    1.首先创建一个NSMutableAttributedString类型的实例对象:
    例如:
    objc NSMutableAttributedString *AttributedStr = [[NSMutableAttributedString alloc]initWithString:@"初次使用富文本编辑文字,收获很大"];
    2.创建一个存放文本属性的字典对象:
    例如:
    objc NSDictionary *attributeDict1 = [NSDictionary dictionaryWithObjectsAndKeys:[UIFont systemFontOfSize:15],NSFontAttributeName,[UIColor orangeColor],NSForegroundColorAttributeName, nil]; NSDictionary *attributeDict2 = [NSDictionary dictionaryWithObjectsAndKeys:[UIFont systemFontOfSize:18],NSFontAttributeName,[UIColor darkGrayColor],NSForegroundColorAttributeName, nil];
    3.为实例化的NSMutableAttributedString对象设置富文本属性,常用方法如下:
    为某一范围内设置多个属性
    - (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;
    例如:
    objc [attributedStr addAttributes:attributeDict1 range:NSMakeRange(0, 11)]; [attributedStr addAttributes:attributeDict2 range:NSMakeRange(11, 4)];
    4.最后为相应的控件赋值
    例如:
    UILabel *testLabel = [[UILabel alloc]initWithFrame:CGRectMake(20, 100, self.view.frame.size.width - 40, 35)];
    testLabel.attributedText = attributedStr;
    [self.view addSubview:testLabel];
    常用富文本属性介绍:
    objc // 字体 NSFontAttributeName // 段落格式 NSParagraphStyleAttributeName // 字体颜色(前景色) NSForegroundColorAttributeName // 背景颜色 NSBackgroundColorAttributeName // 删除线格式 NSStrikethroughStyleAttributeName // 下划线格式 NSUnderlineStyleAttributeName // 删除线颜色 NSStrokeColorAttributeName // 删除线宽度 NSStrokeWidthAttributeName // 阴影 NSShadowAttributeName

    相关文章

      网友评论

          本文标题:iOS富文本使用技巧

          本文链接:https://www.haomeiwen.com/subject/zacotxtx.html