从EditText发送信息到IME
-
23-10-2019 - |
题
我正在写一个语言学习应用程序,目前只有德语<->俄语。
有几个 EditTexts
用户应该以一种或另一种语言输入文本。由于这些语言使用不同的字母,因此该应用程序通过实现自己的软键盘 InputMethodService
并提供拉丁和西里尔键盘布局。每个人都知道 EditText
田地期望哪种语言。
我想要的是,例如,每当 EditText
期望俄罗斯焦点的现场,应该显示西里尔键盘布局。选择时, EditText
应该将一些常数传递给IME,后者可以用来决定是在拉丁语还是西里尔模式下显示。
理想情况下,只需指定一些自定义 InputType
为了 EditText
但这似乎不可能,是吗?这里的正确方法是什么?
解决方案
您的想法听起来不错。 IME的代码检查 InputType
在开关块和默认键盘布局中,如果 InputType
不匹配。
您还可以提供逻辑 onCreate()
您的方法 Activity
要检查哪种输入方法处于活动状态,并使用该信息选择哪个 inputType
您的 EditText
应该有。
不隶属于 StackOverflow