在restartInput()之后软键盘失去预测

时间:2017-03-28 12:35:10

标签: android keyboard android-softkeyboard swift-keyboard

我的应用程序中有一个非常奇怪但一致的错误,任何支持单词预测的标准Android键盘。

我正在做的是,在我评估InputMethodManager.restartInput()的输入以显示不同的IME标签(我用EditText检查当前文本后,我调用TextWatcher当文本为空时将标签设置为“关闭”,当文本为空时设置为“发送”。在不调用restartInput()的情况下,在重新连接连接之前不会接管IME标签更改,例如通过再次关闭并重新打开键盘。

现在,当我通过键盘手动输入字符时,一切都很正常,标签被更改,键接受被接受,一切都很好,但是如果我点击某个键盘上的某个预测来粘贴单词,那么第二次点击预测丢失(即我调用restartInput()后应该粘贴的单词)。

“迷失”对于不同的键盘意味着不同的东西,例如SwiftKey将第一个单词加下划线然后用点击的第二个单词替换它,而Google的键盘只保留第一个单词,完全忽略第二个单词然后继续任何下一个单词。

此视频显示了问题:https://puu.sh/v0WUo/8f9b3571ed.mp4

我点击“测试和”,但EditText只接收“测试”。

以前有人见过这个吗?我做错了什么?

0 个答案:

没有答案