android实现emoji输入

学android也有一段时间, 一直都是自己摸索, 各种上网查资料, 也明白了不能一味去索取有时间也要分享一些自己的心得 。 

 

最近几天都在写关于android emoji输入的小例子,网上有不少源码还有实现思路,我自己也看了一个emojicon的开源项目, 分析了下实现原理,搞了几个小时也没弄懂,  emojicon的表情符号都经过一定的编码,关键是自己水平有限, 对编码那一块很少涉及。

 

首先要实现emoji先要弄清楚一些相关的类与继承关系。

CharacterStyle :     

    实现类都可以设置字符的风格。

Spannable  :

    该接口间接的实现了CharSequence, 在android中TextView 的setText方法是接收的CharSequence这点要定要记住.

 

简单的实现方法:

   利用emoji文件的名子按自己设计的规则生成一个emoji的文本表示。将emoji文本设置到TextView或EditText,  这里的TextView都是要自己去继承后面重写一些方法,将emoji文本设置到TextView中间要对TextView的字符进行查找,找出里面的emoji文本.再通过Spannable来替换成图片。 

 

定义类:   

  Emoji: 

     实体类。 

  AbsEmojiFactor    

    emoji抽象工厂, 加载emoji文件。

  

  EmojiManager

    搜索emoji文本,对AbsEmojiFactor产生的emoji进行集中管理 。

 

其他的都是些ui布局,适配器什么的,不是核心部分就不写出来呢, 上张图后上代码 。 

UI过的去就行 哈哈.

android实现emoji输入

 

 

 

项目编码是utf-8乱码请修改编码 , 下载完后用压缩软件解压就行呢。 

百度网盘下载: http://pan.baidu.com/s/1jGzHi8Q

    

  

 

 

你可能感兴趣的:(android)