美文网首页
iOS 部分文字颜色变色并有点击事件

iOS 部分文字颜色变色并有点击事件

作者: 夏日冰霜 | 来源:发表于2019-01-04 11:19 被阅读0次

本文介绍怎么使一段文字中部分文字变颜色,并带有点击事件

实现方法

  • textView富文本实现文本变色
  • textView代理方法实现点击事件

代码

UITextView *contentTV = [[UITextView alloc] init];
//不要忘记设置frame!
    NSString *descText = @"第一个段落;\n\n首次购买***神器需去个人资料里设置收货者的收货地址,设置后平台将自动发货,没有设置收货地址的用户将不能正常收到货物;\n\n第3个段落;\n\n使用方法请去使用教程中查看。";
    NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:descText];
    [attributedString addAttribute:NSLinkAttributeName
                             value:@"ProvidentFundshuaxin://"
                             range:[[attributedString string] rangeOfString:@"使用教程"]];
    [attributedString addAttributes:@{NSFontAttributeName : [UIFont systemFontOfSize:13]} range:[descText rangeOfString:@"使用教程"]];
    contentTV.attributedText = attributedString;
    contentTV.linkTextAttributes = @{NSForegroundColorAttributeName: C_465F7D,
                                     NSUnderlineStyleAttributeName: @(NSUnderlinePatternSolid)};
    
    contentTV.textColor = C_9B9B9B;
    contentTV.delegate = self;
    contentTV.editable = NO;        //必须禁止输入,否则点击将弹出输入键盘
    contentTV.scrollEnabled = NO;
    [self.view addSubview:contentTV];
  
#pragma mark ---- textView Delegate ----
-(BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange{
    NSRange range = [@"第一个段落;\n\n首次购买***神器需去个人资料里设置收货者的收货地址,设置后平台将自动发货,没有设置收货地址的用户将不能正常收到货物;\n\n第3个段落;\n\n使用方法请去使用教程中查看。" rangeOfString:@"使用教程"];
    if (NSEqualRanges(characterRange, range)) {
        SXWebViewController *vc = [[SXWebViewController alloc] init];
        vc.navigationItemTitle = @"使用教程";
        vc.urlLinkStr = @"https://www.baidu.com";
        [self.navigationController pushViewController:vc animated:YES];
    }
    return YES;
    
}


如果本文有帮到你,希望给个小心心支持一下~

相关文章

  • iOS 部分文字颜色变色并有点击事件

    本文介绍怎么使一段文字中部分文字变颜色,并带有点击事件 实现方法 textView富文本实现文本变色textVie...

  • 菜鸡学 iOS 3.2 手写Tab选项卡效果--添加手势

    实现效果 文件结构 主要思路 --- 给Label添加手势,点击后触发事件--- 事件里写 点击后文字变色 添加下...

  • MAC OSX - NSButton

    添加点击事件:mac添加点击事件代码方法需要同时设置两个方法: 改变文字颜色:mac的按钮不能像iOS一样直接设置...

  • 部分文字点击事件

    转载原文单独封装一个方法,根据传入文字的范围来设置点击的范围,使用block回调来实现点击事件 .h文件 .m文件...

  • Android TextView 中实现部分文字变色以及点击事件

    首先要想实现文字变色以及点击,都需要使用到SpannableStringBuilder,实例化该类也很简单,只需将...

  • YYKit之YYLabel

    本文只对富文本中部分文字添加点击事件做简单介绍 1.添加点击事件 YYLabel中给部分文字添加点击事件主要是在富...

  • H5编写指南

    常见问题汇总: 移动端点击事件按钮变色 具体表现:安卓端点击变蓝色,ios端点击留黑色框 解决方案:在所有的a标签...

  • ios UILabel 中部分文字变色

    最近做了个评论回复功能,要求用户名变色,找了下方法,总结下 结果部分: UILabel 中间部分文字改变颜色方法 ...

  • iOS-YYLabel实现部分文字的点击事件

    描述:用label实现部分文字点击事件,并设置内边距 如果还想给文本添加颜色用之前的方法不行 需要再写一遍

  • iOS Label分段颜色,iOS label显示不同颜色

    *有很多需求, 是这种情况,变色字体即不需要点击,但是它掺杂在其他颜色字体之中,iOS 给我们提供了NSMutab...

网友评论

      本文标题:iOS 部分文字颜色变色并有点击事件

      本文链接:https://www.haomeiwen.com/subject/iarhrqtx.html