0

ユーザーが通常数字を入力する EditText があります。したがって、数値ソフト キーボードを取得するために InputType.TYPE_CLASS_NUMBER を使用しています。ただし、場合によっては文字を入力したいユーザーもいるかもしれないので、InputType.TYPE_CLASS_NUMBER と InputType.TYPE_CLASS_TEXT を切り替えるボタンを用意しました。

正常に動作しますが、ハードウェア キーボードを備えたデバイスでは、この動作が非常に奇妙になることがわかりました。その問題を解決するこの回答を見つけたので、それらのデバイスのキーボード切り替え機能を除外できます。

しかし、InputType.TYPE_CLASS_NUMBER と InputType.TYPE_CLASS_TEXT を切り替えるときに、ソフトウェア キーボード レイアウトを決して変更しないデバイスもあります。たとえば、私の asus Transformer Prime タブレットです。ソフトウェア キーボードがレイアウトを変更するかどうかを知るにはどうすればよいですか?

4

1 に答える 1

1

ソフトウェア キーボードがレイアウトを変更するかどうかを知るにはどうすればよいですか?

できません。InputType要求ではなくヒントです。一部のインプット メソッド エディタ (「ソフトウェア キーボード」) にはボタンさえありません (Graffiti を参照)。インプット メソッド エディタの作成者がその機能を宣言する必要がないことが主な理由で、インプット メソッド エディタの機能を判断するためにシステムに問い合わせる手段はありません。InputType彼らは、適切だと思うように、 などを尊重したり無視したりできます。

于 2013-05-14T12:35:23.493 に答える