iOS端常用的富文本链接

2019-06-20  本文已影响0人  低情商男孩

问题场景:使某段文字中的特定文字可以点击,有点击事件

运用场景:登录注册页面的协议文字等

实现思路:利用UITextView富文本显示将可点击文字标出,利用富文本文字NSLinkAttributeName属性及UITextView代理中textView:(UITextView*)textView shouldInteractWithURL:(NSURL*)URL inRange:(NSRange)characterRange方法实现文字点击事件。

实现步骤:1、新建继承自UITextView的类,取名HRAttributedLinkTextView,添加相关属性,给

2、实现相关方法

    1.禁用UITextView的编辑、长按弹出菜单等属性,避免弹出键盘

    2.通过实现gestureRecognizerShouldBegin代理方法禁用长按手势    

    3.给可点击文字添加相应属性并显示内容,主要是设置可点击文字的NSLinkAttributeName属性

4.实现相关代理实现文字点击操作,根据设定NSLinkAttributeName值拦截UITextView文字的点击事件,如果点击文字的url与之前设定的值一致,则执行相关回调操作

待完善:去除可点击文字的点击背景。

详细代码及demo:https://github.com/hefs/AttribuedLinkTextDemo

上一篇下一篇

猜你喜欢

热点阅读