美文网首页iOS开发资料收集区
关于UILabel与NSMutableAttributedStr

关于UILabel与NSMutableAttributedStr

作者: Hiker5 | 来源:发表于2016-09-10 15:41 被阅读101次

    最近遇到个需求,一个label里面,设置不同的字体颜色大小以及改变label里面的行间距,搜了一些,这里做个总结。
    其实主要是用到了NSMutableAttributedString。NSAttributedString可以让我们使一个字符串显示的多样化。话不多说,上代码。

    NSString *labelText = @"this is a label bababababababababababababababaabababababababaaabababaababababa";
    NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:labelText];
    
    //获取string范围:this
    NSRange rangeA = [labelText rangeOfString:@"this"];
    //改变颜色:红色
    [attributedString addAttribute:NSForegroundColorAttributeName value: [UIColor redColor] range:rangeA];
    //改变字体大小
    [attributedString addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:30.0] range:rangeA];
    //加下划线
    [attributedString addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInteger:NSUnderlineStyleSingle] range:rangeA];
    //更改label的text的行间距
    NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];   
    [paragraphStyle setLineSpacing:15.0];
    [attributedString addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, [labelText length])];
    

    最终效果图


    效果图

    相关文章

      网友评论

        本文标题:关于UILabel与NSMutableAttributedStr

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