博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在Android系统中使用系统自带的emoji表情
阅读量:5796 次
发布时间:2019-06-18

本文共 1124 字,大约阅读时间需要 3 分钟。

hot3.png

一,对emoji表情的理解

       emoji表情是一种表情符号,在代码中它现在其实是一组遵循Unicode的编码,即每一个表情符号都对应了一个Unicode编码。更进一步说,emoji表情实际上是一组Unicode编码与一组表情描述之间的一一对应。注意,这里所说的不是表情图片,而是表情描述。那么图片的实现是由谁来负责的呢?图片是由各个系统或者软件针对统一的表情描述来各自实现的,他们都遵循统一的Unicode编码规范。也就是说Unicode编码其所对应的表情描述是统一的,是所有人都要共同遵守的一套标准或者规范,而具体的表情图片则可能因平台的不同而产生差异,比如Android和ios。以非常火的“笑哭”表情为例,如下表

ios

Android(>=4.4)

Twitter

Unicode

Description

U+1F602

face with tears of joy

对于描述为”face with tears of joy",Unicode编码为”U+1F602”的表情,ios,android,和twitter分别做了不同的实现。

       更过关于emoji表情编码的对应可以在这里找到:  可能需要vpn访问

二, 如何在Android系统中操作系统自带的emoji表情 
       在android中,我们可以只用go输入法或者搜狗输入发来输入emoji表情,对于用户这没有任何问题。但是对于程序员来说如何在程序中输入或者得到一个emoji表情呢?比如我们想通过textview.setText()方法来输入一个emoji表情。

       其实通过emoji表情的通用Unicode编码就可以实现,直接使用Character.toChars()方法将unicode编码转换为一个char数组,再将这个char数组转换成为字符串就可以直接操作了,系统会自动将其解析为表情图片,可以直接显示在textview组件当中,不需要我们做任何其他的事情。

三, 具体的代码实现
private void setEmojiToTextView(){	int unicodeJoy = 0x1F602;	String emojiString = getEmojiStringByUnicode(unicodeJoy);	myTextView.setText(emojiString);}private String getEmojiStringByUnicode(int unicode){	return new String(Character.toChars(unicode));}

转载于:https://my.oschina.net/jackyguo/blog/609049

你可能感兴趣的文章
我的友情链接
查看>>
DHCP中继数据包互联网周游记
查看>>
oracle学习笔记-第四篇
查看>>
我的友情链接
查看>>
IBM MQ通道
查看>>
我的友情链接
查看>>
ichartjs的使用
查看>>
Arduino可穿戴开发入门教程Arduino开发环境介绍
查看>>
解决 squid The basicauthenticator helpers are crashing too rapidly, need help
查看>>
XamarinEssentials教程首选项Preferences判断项目是否存在
查看>>
Linux 添加Nginx 到 service 启动 (完整篇)
查看>>
vmware通过地址连接SSH secureCRT解决缓慢的速度连接
查看>>
runtime
查看>>
[转载]安装完 MySQL 后必须调整的 10 项配置
查看>>
SpringMVC拦截器(资源和权限管理)
查看>>
laravel的模板继承的使用
查看>>
我的友情链接
查看>>
FireEye:雪人行动针对美国海外战争退伍军人网站
查看>>
java.util.date 转为 java.sql.date
查看>>
oracle使用dblink跨库查询的例子
查看>>