NSMutableAttributedString 的简单使用介绍

来源:互联网 发布:linux fuser 编辑:程序博客网 时间:2024/05/01 22:03

在ios开发过程中,总是会遇到一段话需要给不同的颜色以及不同字的大小,这个时候会使用到NSMutableAttributedString,以下是我自己写的一段代码,大家看看吧(复制可以直接跑).

上码:


UILabel *inLabel = [[UILabel alloc]initWithFrame:CGRectMake(95, 64, 190, 70)];

    inLabel.backgroundColor = [UIColor cyanColor];

    //infoLabel.backgroundColor = [UIColor clearColor];

    inLabel.textAlignment = NSTextAlignmentLeft;

    inLabel.font = [UIFont systemFontOfSize:13];

    inLabel.numberOfLines = 0;

   // infoLabel.textColor = [UIColor cyanColor];

    [self.view addSubview:inLabel];

    NSString *inString = @"连续签到1天得10积分;\n连续签到2天得15积分;\n连续签到3天及以上得20积分;\n注: 若连续签到终端则重新计算";

//    NSString * ha = [NSString stringWithFormat:@"注:"];

//    NSString * ha2 = [NSString stringWithFormat:@"1"];

//    NSString * ar = [NSString stringWithFormat:@"%@,%@",ha2]

   // NSRange infoRange = [infoString rangeOfString:@"注:"];

    NSMutableAttributedString  *inATString = [[NSMutableAttributedStringalloc]initWithString:inString ];

//    [infoATString addAttribute:(NSString *)NSForegroundColorAttributeName

//                         value:(id)[UIColor redColor]

//                         range:infoRange];

    [inATString addAttribute:NSForegroundColorAttributeName value:[UIColoryellowColor] range:NSMakeRange(4, 1)];

    [inATString addAttribute:NSForegroundColorAttributeName value:[UIColoryellowColor] range:NSMakeRange(7,2)];

    

    

    

    // NSRange range = NSMakeRange(infoString.length-1, 1);

    //[infoATString addAttribute:(NSString *)kCTFontAttributeName value:(id)[UIFont systemFontOfSize:10] range:range];

    [inLabel setAttributedText:inATString];


0 0