我可以在自定义应用内键盘上使用Android InputMethodManager吗?

Sur*_*gch 7 keyboard android custom-keyboard inputmethodmanager

InputMethodManager是一种应用程序可用于与系统键盘交互的服务.编辑EditText也喜欢用它来间接通知键盘变化(例如updateSelection).

我可以参考InputMethodManager这个

InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
Run Code Online (Sandbox Code Playgroud)

我的问题是,这似乎只适用于系统键盘.我可以使用InputMethodManager一个自定义应用程序内的键盘?如果只是一个孤立的应用程序我不在乎,但我在一个库中包括一个将在许多应用程序中使用的自定义键盘.我需要一种标准的方式让编辑器与键盘进行通信.

我是否必须编写自己的输入法管理器,或者是否有办法在InputMethodManager我的自定义应用内键盘中使用该标准?

更新

以下是一些线索,说明如果无法使用标准输入法管理器,我将如何实现自己的自定义输入法管理器.

dev*_*nlu 1

你应该实施你的。

InputMethodService 提供了 InputMethod 的标准实现,最终实现可以从中派生并进行自定义。有关编写输入方法的基础知识的更多信息,请参阅基类 AbstractInputMethodService 和 InputMethod 接口。