Android输入法/自定义表情符号

时间:2015-09-08 13:34:27

标签: android keyboard

我正在尝试为Android创建一个自定义IME,其自定义表情符号实际上只是显示在按键上的图像。

使用InputConnection

中的KeyboardActionListener,可以轻松地从键盘向焦点文字字段发送文字
InputConnection ic = getCurrentInputConnection();
ic.commitText(String.valueOf(code),1);   

然而,发送图像非常具有挑战性。我已经在SO(https://github.com/chiragjain/Emoticons-Keyboard)和其他几个例子中看到了许多答案所建议的键盘示例,并且它总是使用类似于此的方法:

Spanned cs = Html.fromHtml("<img src ='"+ index +"'/>", imageGetter, null);         
int cursorPosition = content.getSelectionStart();       
content.getText().insert(cursorPosition, cs);

虽然如果聚焦文本字段是程序员创建的活动的一部分,这看起来效果很好,但它不适用于OS文本字段(例如,当尝试添加时,它会添加空方块而不是图像图像到我写的电子邮件消息。

我还尝试了其他方法,在按下时从虚拟键盘发送我的自定义图像。我尝试使用剪贴板复制粘贴图像的二进制文件和链接,但它不起作用。

我尝试在将图像保存到媒体库后发送图像。这样做效果更好,它允许用户选择接收图像的应用程序,当应用程序收到图像时,图像会正确显示。但是,它始终会创建一条新消息。例如,我在电子邮件应用程序中,打开自定义键盘并选择图像。这启动了意图,它带来了选择器。我选择邮件,图像被添加到新邮件中,而不是我当前正在编辑的邮件。

我现在已经没想完了。甚至可以在虚拟键盘上显示自定义emoticoones / images,并以可靠的方式将它们发送到OS应用程序?

0 个答案:

没有答案