标签:android-input-method emoji animated keyboard android
我正在为Android开发表情符号键盘,但不知道如何在InputMethodService的currentInputConnection中添加动画表情符号.
Edittext content= findVie......
sb = new SpannableStringBuilder();
String dummyText = "-";
sb.append(dummyText);
try {
sb.setSpan(anim = new AnimatedImageSpan(new AnimatedGifDrawable(
getAssets().open("54.gif"),
new AnimatedGifDrawable.UpdateListener() {
@Override
public void update() {
content.requestLayout();
content.invalidate();
}
})), sb.length() - dummyText.length(), sb.length(),
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
content.setText(sb);
这里的内容是一个editText视图,但是我没有任何编辑文本视图.我所拥有的只是由InputMethodService.getCurrentInputConnection()返回的currentInputConnection.
解决方法:
如果我对您的理解正确,那么您正在尝试向EditText发送“动画图像”(例如gif)吗?据我所知,这可能是不可能的.如果您已阅读InputConnection的documentation,则应该知道它不提供任何API来执行此操作.
实际上,我正在开发一个Android IME项目,其中我们实现了一个静态Emoji输入键盘.我们要做的就是简单地通过InputConnection发送表情符号的编码字节,然后在编辑框中显示笑脸.
如果您使用WeChat,则可能会注意到其客户端已实现了自定义表情符号键盘(包括静态和动态内容).那是因为他们确切地知道自己在做什么.
标签:android-input-method,emoji,animated,keyboard,android 来源: https://codeday.me/bug/20191121/2052435.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。