美文网首页iOS常用
YYLabel的富文本设置

YYLabel的富文本设置

作者: 异乡人_4f2a | 来源:发表于2021-01-20 19:24 被阅读0次

实现以上红框内的效果,设置部分字体内容的颜色为红色,前面按钮可以点击,红色字体内容也可以点击:

1、导入YYText:

import YYText

2、定义YYLabel属性

var protocolLabel = YYLabel()

3、代码实现

func initUI() {

self.protocolLabel.font = UIFont.systemFont(ofSize: 12.0)

        self.protocolLabel.textColor = UIColor.init(rgb: 0x161616)

        self.protocolLabel.textAlignment = .center

        self.protocolLabel.isUserInteractionEnabled = true

        view.addSubview(self.protocolLabel)

        self.protocolLabel.snp.makeConstraints { (make) in

            make.top.equalTo(vercodeUnderLineView.snp.bottom).offset(15.cgFloat.pad(20).adaptHeight())

            make.left.equalTo(vercodeUnderLineView)

            make.right.equalToSuperview().offset(-45.cgFloat.pad(-211).adaptWidth())

        }

        self.protocolLabel.numberOfLines = 2

        //设置协议

        setAttribute(markup: "《AI美照馆用户协议及隐私政策》")

}

    //MARK:设置协议

    func setAttribute(markup:String) {

        let iconImg =UIButton()

        iconImg.setImage(UIImage(named:"ic_radio button_nor"), for: .normal)

        iconImg.setImage(UIImage(named:"ic_radio button_nsel"), for: .selected)

        iconImg.hitEdgeInsets=UIEdgeInsets(top:20, left:20, bottom:20, right:20)

        //MARK:设置按钮点击事件

        iconImg.rx.tap.subscribe(onNext: {_in

            iconImg.isSelected=!iconImg.isSelected

        }).disposed(by: disposeBag)

        iconImg.frame=CGRect(x:0, y:0, width:15, height:15)

        letatt =YYTextAttachment(content: iconImg)

        att.contentMode= .left

        lettext =String(format:" 点击登录即代表同意%@",markup)

        let attributeStr =NSMutableAttributedString.yy_attachmentString(withContent: iconImg, contentMode: .left, attachmentSize:CGSize(width:15, height:15), alignTo:UIFont.systemFont(ofSize:12), alignment: .center)

        attributeStr.yy_insertString(text, at:1)

        //MARK:设置协议点击事件

        attributeStr.yy_setTextHighlight(NSRange(location:11, length: markup.count), color:UIColor.init(rgb:0xF76F00), backgroundColor:nil) { (view, att, range, rect)in

            print("跳转协议")

        }

        self.protocolLabel.attributedText = attributeStr

    }

相关文章

  • YYLabel的富文本设置

    实现以上红框内的效果,设置部分字体内容的颜色为红色,前面按钮可以点击,红色字体内容也可以点击: 1、导入YYTex...

  • YYLabel富文本

    之前一直没用YYLabel做过富文本,感觉out了,前两年面试的时候就有人问我,可是我很偏执,或者说对RichEd...

  • YYLabel富文本

    YYLabel与UILabel对表情的支持YYLabel只支持YYTextAttachment,不支持系统默认的N...

  • YYKit框架学习之YYLabel

    一、YYLabel 强大的富文本显示功能,可根据文字的range随意添加点击事件 1 自动换行 YYLabel *...

  • YYLabel高亮点击事件与tap手势冲突解决

    在手势代理方中,判断YYLabel富文本中是否有高亮对象

  • YYLabel富文本显示

    YYLabel实现方式 //1.简单显示label YYLabel *label = [YYLabel new];...

  • YYText源码分析

    YYText 简单介绍 YYText 是YYKit中的一个富文本显示,编辑组件,拥有YYLabel,YYText...

  • ios 使用富文本加载HTML

    富文本设置 \n替换 图片宽度设置 行间距设置 获取富文本的高度

  • YY系列---YYLabel、YYText初步使用

    第一天 YYlabel使用场景:用于富文本局部文本响应点击(至少我们公司如此),具体举例,如社交类型的app,点击...

  • 计算YYLabel内容富文本的高度

    计算YYLabel内容富文本(带行间距)attributeStr的高度,假设行间距间距是5,走的弯路: 一、根据内...

网友评论

    本文标题:YYLabel的富文本设置

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