注册

DemoUI中表情符号点击没有输出

大家好我是一个Android新手
过去主要在Web开发

我尝试用Android SDK Demo的源码作一些改变
改了界面,改了自定义包名

可以正常compile成APK
帐户这些都可以用
可是发现emoticon的键盘输入是有问题的
可以看到表情符号的图,可是点击图片后,信息输入框没有产出输入的代码
如果是自己用手机键盘在信息输入框输入代码,如,送出后又可以渲染出正确的图片

不知道是SmileUtils.java还是我修改时动到哪里有错误。。。
有人遇过类似问题的吗?

谢谢

**已经解决了,感谢 **http://www.imgeek.org/home.php?mod=space&uid=99
已邀请:

lizg - ……

您好,定义的unicode 键值,和对应的 图标的资源id,都需要设置到一个专门的控件里,那个控件,负责扫描,显示表情
一般是在ChatActivity里面有个地方用到了反射,
把路径改为他的正确路径就可以了
本帖最后由 thomasche 于 2015-3-3 22:10 编辑

> forum.php?mod=redirect&goto=findpost&pid=960&ptid=549
您好,定义的unicode 键值,和对应的 图标的资源id,都需要设置到一个专门的控件里,那个控件,负责扫描 ...

您好,在ChatActivity.java中,1180行
原本的路径是完整的
Class clz = Class.forName("com.easemob.chatuidemo.utils.SmileUtils");不知道为什么变成
Class clz = Class.forName("SmileUtils");可能是我用Android Studio更改成自己的Package包名的关系
重新修正为**完整自定义Package包名路径**,就可以正常执行了
谢谢

贴上源代码片段ChatActivity.java中,1178-1182行
1178 if (filename != "delete_expression") { // 不是删除键,显示表情
1179 // 这里用的反射,所以混淆的时候不要混淆SmileUtils这个类
1180 Class clz = Class.forName("##要修正路径的位置##");
1181 Field field = clz.getField(filename);
1182 mEditTextContent.append(SmileUtils.getSmiledText(ChatActivity.this, (String) field.get(null)));



要回复问题请先登录注册