对视图控件进行富文本化,可以在文字中夹杂显示表情,可点击的URL链接等等,可以使用TQRichTextView来实现。

github地址:https://github.com/TinyQ/TQRichTextView

TQRichTextView的demo只实现了表情和URL。所以可以对TQRichTextView进行扩展,完成类似微博@人名,#话题#,或者针对内部链接不可点击等操作。

 


以#话题#为例

1、提取文本中需要富文本化的内容

在原demo的基础上,新建TQRichTextRunTheme文件继承TQRichTextRun。

.m中添加runsForAttributedString方法,解析文本内容生成Run对象,即解析需要富文本化的内容。(参考TQRichTextRunURL中的处理)。

 

2、调用Theme的富文化的方法

TQRichTextView.m的createTextRunsWithAttString中调用TQRichTextRunTheme的runsForAttributedString方法

3、点击富文本的响应处理

富文本delegate实现中,对#话题#的点击进行处理

更多关于@人名,内部链接不可点击等处理,查看附件CoreText


发表评论

电子邮件地址不会被公开。 必填项已用*标注