Swift 版
//text:要改变的字
//result:整个label里的字
//color: 字的颜色
///富文本,根据文字改变字体颜色
func changeSomeTextColor(text: String, inText result: String, color: UIColor) -> NSAttributedString {
let attributeStr = NSMutableAttributedString(string: result)
let colorRange = NSMakeRange(attributeStr.mutableString.range(of: text).location, attributeStr.mutableString.range(of: text).length)
attributeStr.addAttribute(NSForegroundColorAttributeName, value:color , range: colorRange)
return attributeStr
}
OC版
//str:要改变的字
//result:整个label里的字
//color: 字的颜色
- (NSMutableAttributedString *)changeSomeText:(NSString *)str inText:(NSString *)result withColor:(UIColor *)color {
NSMutableAttributedString *attributeStr = [[NSMutableAttributedString alloc] initWithString:result];
NSRange colorRange = NSMakeRange([[attributeStr string] rangeOfString:str].location,[[attributeStr string] rangeOfString:str].length);
[attributeStr addAttribute:NSForegroundColorAttributeName value:color range:colorRange];
return attributeStr;
}
效果:
备注(样式)
1.中间横划线
NSDictionary *attribtDic = @{NSStrikethroughStyleAttributeName: [NSNumber numberWithInteger:NSUnderlineStyleSingle]};