iOS 富文本~设置字体大小和颜色

来源:互联网 发布:telnet测试端口问题 编辑:程序博客网 时间:2024/06/07 03:48

//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄


一、富文本效果图:

图1:



二、富文本实现代码:

//1.初始化UILabel

UILabel *introLabel = [UILabellableFrame:CGRectZerotitle:nilbackgroundColor:[UIColorclearColor]font:kGlobalFontSize_28textColor:[UIColorpurpleColor]];

//2.初始化富文本

NSMutableAttributedString *indroStr = [NSMutableAttributedStringsetupAttributeString:@"张琼在新神力酒店工作"rangeText:@"张琼"textColor:OKColorRGB(236,198, 128)];

introLabel.attributedText = indroStr;

introLabel.frame = CGRectMake(10,100,500,40);

[self addSubview:introLabel];


//注意:效果是@“张琼在新神力酒店上班可以设置一个颜色,这字符串中的@“张琼可以设置其它的颜色和字体大小.


三、富文本实现的分类方法

//分类

#pragma mark - 创建UILabel

+ (UILabel*)lableFrame:(CGRect)frame title:(NSString *)title backgroundColor:(UIColor*)color font:(UIFont*)font textColor:(UIColor*)textColor

{

    UILabel *lable=[[UILabelalloc]initWithFrame:frame];

    lable.text=title;

    lable.font=font;

    [lable setBackgroundColor:color];

    lable.textColor=textColor;

    return lable;

}


#pragma mark - 富文本设置部分字体颜色

+ (NSMutableAttributedString *)setupAttributeString:(NSString *)text rangeText:(NSString *)rangeText textColor:(UIColor *)color  {

    NSRange hightlightTextRange = [textrangeOfString:rangeText];

    NSMutableAttributedString *attributeStr = [[NSMutableAttributedStringalloc] initWithString:text];

    if (hightlightTextRange.length >0) {

        [attributeStr addAttribute:NSForegroundColorAttributeName

                             value:color

                             range:hightlightTextRange];

        [attributeStr addAttribute:NSFontAttributeNamevalue:[UIFontboldSystemFontOfSize:14.0f]range:hightlightTextRange];

        return attributeStr;

    }else {

        return [rangeTextcopy];

    }

}


谢谢!!!