关于解析emoji表情EmojiconTextView控件与超链接解析标签的冲突

来源:互联网 发布:淘宝网电警棍 编辑:程序博客网 时间:2024/05/16 04:55
前几天碰上这样一个需求,需要TextView既能显示表情又能显示超链接(并解析标签显示标签),普通TextView解析超链接并显示标签是没问题,方法就是:
 setText(Html.fromHtml(String)),但是如果也需要解析表情,我原来用的Gitup上一个三方框架,其中自定义控件EmojiconTextView,直接加载就可以
解析表情符(具体用法自己在Gitup查),但是同时有需要解析HTML标签就不可以了,因为解析标签了以后再用EmojiconTextView控件setText(),源码又重新
把解析好的标签toString()了一遍,所以导致不成功,废话不多说了 直接上源码:
public void setText(CharSequence text, BufferType type) 这个源码可以自己看一下就知道怎么回事了 ,我是在
EmojiconTextView控件setText()源码中直接这样改写的:
@Overridepublic void setText(CharSequence text, BufferType type) {   if (null == text) {      return;   }   if(type != BufferType.EDITABLE){      String emojText = emojiParser.demojizedText(text.toString());      // code to check text for null omitted      Spannable spanned = (Spannable) Html.fromHtml(emojText);//解析出来HTML的标签      emotifySpannable(spanned);//解析表情      super.setText(spanned, BufferType.SPANNABLE);   }else {      super.setText(text, BufferType.SPANNABLE);   }}
原来的源码详情可以去gitup下载看,我这里就不贴出来了,希望可以解决一些部分网友的需求,(大神莫喷~~)
0 0