首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >TTTAttributedLabel高亮显示手机号码、网址

TTTAttributedLabel高亮显示手机号码、网址

作者头像
czjwarrior
发布于 2018-05-28 11:24:46
发布于 2018-05-28 11:24:46
1.1K0
举报
文章被收录于专栏:岑志军的专栏岑志军的专栏

1、初始化label

代码语言:javascript
复制
- (TTTAttributedLabel *)traceLabel{
    if (_traceLabel == nil) {
        _traceLabel = [TTTAttributedLabel new];
        [_traceLabel setTextAlignment:NSTextAlignmentLeft];

        // NSTextCheckingTypeLink
        // 设置识别类型
        _traceLabel.enabledTextCheckingTypes = NSTextCheckingTypePhoneNumber;

        [_traceLabel setLinkAttributes:@{NSForegroundColorAttributeName:SS_CUSTOM_DARK_BLUE_COLOR, NSUnderlineStyleAttributeName:@(0)}];

        //链接高亮状态文本属性
        [_traceLabel setActiveLinkAttributes:@{NSForegroundColorAttributeName:[SS_CUSTOM_DARK_BLUE_COLOR colorWithAlphaComponent:.6f],NSUnderlineStyleAttributeName:@(0)}];
        [_traceLabel setUserInteractionEnabled:YES];
        [_traceLabel setDelegate:self];
        [_traceLabel setNumberOfLines:0];
    }
    return _traceLabel;
}

2、设置文字

代码语言:javascript
复制
NSMutableAttributedString *attStr = [NSMutableAttributedString attributedStringWithFont:SS_NORMAL_FONT_WITH_6P(13, 16)
                                                                                  textColor:traceColor
                                                                                  lineSpace:SS_ADAPT_FLOAT_WITH_6P(8, 9)
                                                                              lineBreakMode:NSLineBreakByWordWrapping
                                                                              textAlignment:NSTextAlignmentLeft
                                                                                       text:traceModel.status];
// 这里必须用setText:方法,如果用setAttributedText:高亮无效                                                                                
[self.traceLabel setText:attStr];
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-05-12,如有侵权请联系 cloudcommunity@tencent.com 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档