为了账号安全,请及时绑定邮箱和手机立即绑定

把文本内容变为表情包,Android开发还可以这样 玩?!

标签:
Android iOS

在Android开发中,有时候需求为发送一些系统里面的表情,类似于搜狗输入法的那种简单表情。调用系统的表情,ios那边可以自动识别,同时也避免自己添加表情的图片。效果是这样子的图片描述

然后点击,EditText就会显示这些表情,同时ios那边不需要任何的识别操作,可以直接显示这些表情。开发步骤如下:
S1:定义一个Gridview,适配器用TextView。
S2:获取适配器中数据,也即表情的数据源。可以简单的定义一个EmojiData类

public class EmojiData {

   public static int[] emojiint = {
         0x1F601,
         0x1F602,
         0x1F603,
         0x1F604,
         0x1F605,
         0x1F606,
         0x1F609,
         0x1F60A,
         0x1F60B,
         0x1F60C,
         0x1F60D,
         0x1F60E,
         0x1F60F,
         0x1F612,
         0x1F613,
         0x1F614,
         0x1F616,
         0x1F618,
         0x1F61A,
         0x1F61C,
         0x1F61D,
         0x1F61E,
         0x1F620,
         0x1F621,
         0x1F622,
         0x1F623,
         0x1F624,
         0x1F625,
         0x1F628,
         0x1F629,
         0x1F62A,
         0x1F62B,
         0x1F62D,
         0x1F630,
         0x1F631,
         0x1F632,
         0x1F633,
         0x1F634,
         0x1F635,
         0x1F637,
         0x1F638,
         0x1F639,
         0x1F63A,
         0x1F63B,
         0x1F63C,
         0x1F63D,
         0x1F63E,
         0x1F63F,
   };

   private static ArrayList<String> list = new ArrayList<>();
//获取表情源数据
   public static ArrayList<String> initEmojiString() {
      for (int i = 0; i < emojiint.length; i++) {
         list.add(getEmojiStringByUnicode(emojiint[i]));
      }
      return list;
   }
//将int对应的表情转换为String类型
   private static String getEmojiStringByUnicode(int unicode) {
      return new String(Character.toChars(unicode));
   }
}

S3:将数据加载到适配器中

ArrayList<String> list = EmojiData.initEmojiString();
        adapter.setData(list);
        gridView_emoji.setAdapter(adapter);

S4:对gridview进行点击即可:

 gridView_emoji.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                eidtivew_emoji.append(adapter.getData().get(position).toString());
            }
        });

总结:表情的处理其实还是比较简单的,最主要的是要清楚默认的系统表情对应的int值以及如何将其转换成能后识别成表情的String类型数据。其他的就是如何展示这些表情的了,以上就这样,欢迎大家发表更好的表情开发方案!

点击查看更多内容
7人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消