如下代码是字体颜色的修改只修改一部分并且无点击效果,点击效果可以使用yylabel 来搞定
-(UILabel *)tipLab{
if (!_tipLab) {_tipLab = [[UILabel alloc] init];
_tipLab.backgroundColor = [UIColor clearColor];
_tipLab.numberOfLines = 0;
NSMutableAttributedString *hintString=[[NSMutableAttributedString alloc]initWithString:@"温馨提示:你说是什么就是什么了"];
//获取要调整颜色的文字位置,调整颜色
NSRange range1=[[hintString string]rangeOfString:@"是什么就"];
[hintString addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:range1];
_tipLab.attributedText = hintString;
[self.headView addSubview:_tipLab];
}
return _tipLab;
}
改变颜色并自带点击方法的效果类似各种界面中的协议使用yylabel来做的
-(YYLabel *)pushLab{
if (!_pushLab) {
_pushLab = [[YYLabel alloc] init];
_pushLab.numberOfLines = 0;
[self.backView addSubview:_pushLab];
NSString *string = [NSString stringWithFormat:@"买入金额元\n前往 账户详情 可查看交易明细。\n最终交易结果请以行方实际确认情况为准!"];
NSMutableAttributedString *text = [[NSMutableAttributedString alloc] initWithString:string];
NSRange textRange = [string rangeOfString:@"账户详情"];
text.yy_font = Font_CN(14);//字体大小
text.yy_color = [UIColor redColor];//字体颜色
[text yy_setColor:[UIColor redColor] range:textRange];
text.yy_lineSpacing = 5;//行距
YYTextHighlight *highlight = [YYTextHighlight new];
highlight.tapAction = ^(UIView *containerView, NSAttributedString *text, NSRange range, CGRect rect) {
NSLog(@"tap text range:...");
//此处做点击的处理方法
};
[text yy_setTextHighlight:highlight range:textRange];
_pushLab.attributedText = text;
}
return _pushLab;
}