iOS 字符串不同位置显示不同颜色

//"/人"置灰
    NSString *grayString = @"/人";
    NSString *string = [NSString stringWithFormat:@"¥%@/人", [FeeUtil priceStringWithPrice:self.insuranceModel.price]];
    NSMutableAttributedString *aString = [[NSMutableAttributedString alloc] initWithString:string];
    NSRange range = [string rangeOfString:grayString];
    [aString addAttribute:NSForegroundColorAttributeName value:TNA_ONLINE_BOOK_COLOR_TEXT_DEEP_GRAY range:range];
    _priceLabel.attributedText = aString;

    self.priceLabel.attributedText = viewModel.price;
    NSString *string = self.priceLabel.text;
    NSMutableAttributedString *aString = [[NSMutableAttributedString alloc] initWithString:string];
    NSString *subString = @"/";
    NSString *temp;
    //"/"后的单位置灰
    for (int i = 0; i < string.length; i++) {
        temp = [string substringWithRange:NSMakeRange(i, subString.length)];
        if ([temp isEqualToString:subString]) {
            NSRange range = {i, subString.length + 2};
            [aString addAttribute:NSForegroundColorAttributeName value:TNA_ONLINE_BOOK_COLOR_TEXT_DEEP_GRAY range:range];
        }
    }
    self.priceLabel.attributedText = aString;

PS:字符串的attributedText这个属性只要被赋值,那么该字符串的text就会自动有attributedText中的text属值了 不用再给字符串的text设置值

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容