0

我有一个 EditText,用户通常在其中输入数字。因此,我使用 InputType.TYPE_CLASS_NUMBER 来获取数字软键盘。偶尔,有些用户可能想要输入字母,所以我有一个按钮可以在 InputType.TYPE_CLASS_NUMBER 和 InputType.TYPE_CLASS_TEXT 之间切换。

工作正常,但我发现这种行为在带有硬件键盘的设备上变得非常奇怪。我找到了解决该问题的答案,因此我可以排除这些设备的键盘切换功能。

但也有一些设备,例如我的华硕 Transformer Prime 平板电脑,在 InputType.TYPE_CLASS_NUMBER 和 InputType.TYPE_CLASS_TEXT 之间切换时不会改变软件键盘布局。我怎么知道软件键盘是否会改变布局?

4

1 回答 1

1

How can i know if the software keyboard will change the layout or not?

You can't. InputType is a hint, not a demand. Some input method editors ("software keyboards") don't even have buttons (see Graffiti). There is no means of interrogating the system to determine the capability of input method editors, largely because the authors of input method editors do not have to declare their capabilities. They can honor or ignore InputType, etc. as they see fit.

于 2013-05-14T12:35:23.493 回答