Android 解析微信基础表情并显示

本文详细介绍了如何在Android应用中解析并显示微信基础表情。通过使用SpannableString,结合特定的表情字符串,将文本表情替换为对应的图片。代码示例展示了如何处理字符串中的表情符号,并用getDrawable()方法获取表情图片,然后利用ImageSpan进行显示。
摘要由CSDN通过智能技术生成

先贴一个链接http://blog.csdn.net/u011002668/article/details/50896586

自己根据需求去更改.

先不看代码,先说一下原理,把原理弄明白了,再看代码就很清晰。

在工程中,使用的就是系统的TextView,所以可以看出来显示表情并不是我自定义的功能,而是本身就支持的。只不过通常TextView在显示文本时,我们输入的都是普通的String或者Charsequence,要显示表情,就不能输入普通的String了,而是输入一个特殊的东西,叫SpannableString。
SpannableString,从名字也能看出来,它就是String字符串,只不过它在显示的时候,会把字符串中的一部分替换成一张图片,而当你调用editText.getText()方法时,返回的还是String字符串。所以它就是一段字符串和一张图片的对应。在显示的时候是图片,getText()取出时是String。

这个原理解释清楚后,示例图所展示的功能就不难了。 

 

(1).由于需求的原因,此文只解析微信表情并显示上去,不发送表情

(2).微信表情获取的地址,微信安装路径D:\Program Files (x86)\91 Wireless\91Mobile V5\Dlls\WeChat\Resource\html\expression

(3).表情对应的String,最后面5个微信没有,无法测试

    public static final String ee_1 = "/::)";
    public static final String ee_2 = "/::~";
    public static final String ee_3 = "/::B";
    public static final String ee_4 = "/::|";
    public static final String ee_5 = "/:8-)";
    public static final String ee_6 = "/::<";
    public static final String ee_7 = "/::$";
    public static final String ee_8 = "/::X";
    public static final String ee_9 = "/::Z";
    public static final String ee_10 = "/::'(";
    public static final String ee_11 = "/::-|";
    public static final String ee_12 = "/::@";
    public static final String ee_13 = "/::P";
    public static final String ee_14 = "/::D";
    public static final String ee_15 = "/::O";
    public static final String ee_16 = "/::(";
    public static final String ee_17 = "/::+";
    public static final String ee_18 = "/:--b";
    public static final String ee_19 = "/::Q"

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值