10

状態に応じて数値および/またはアルファベット入力を処理する必要がある EditText があります。ユーザーは、状況によっては、どちらのタイプの入力も入力できます。これを使用して「電話」キーボードをポップアップすることしかできsetInputType (InputType.TYPE_CLASS_NUMBER);ませんでしたが、ユーザーが QWERTY キーボードに戻ることはできません。ほとんどの入力は実際には数値であるため、ほとんどの場合、ユーザーに ?123 キーボードを提示したいと思います。QWERTY キーボードに数回戻るだけで済みます。

アルファベット入力用に画面上の QWERTY キーボードをポップアップ表示し、数字の場合は "?123" キーボードをポップアップ表示するにはどうすればよいですか? 毎回 QWERTY キーボードの ?123 ボタンを押す必要がないように、ユーザーの手順を保存したいだけです。

更新:これは、表示したいキーボードです。その理由は、アルファベット入力と数値入力をユーザーが簡単に切り替えられるようにしたいからです。「テンキー」からQWERTYキーボードに切り替える方法はありません。私のアプリでは、入力の 90% に数値入力が必要なので、便宜上ポップアップさせたいと思います。つまり、90% の確率で数字キーボードに切り替えるのではなく、10% の確率で QWERTY キーに切り替えるだけで済みます。ここに画像の説明を入力

input.setRawInputType(Configuration.KEYBOARD_QWERTY);Honeycomb とそれ以降のバージョンの Gingerbread では、呼び出しの動作が異なります (テンキーが表示されます)。Gingerbread 2.2.3 では、思いどおりに動作します。Honeycomb と 2.3.7 キーボードのスクリーングラブは、参考のために以下に示します。なぜこんなに違うのかわかりません。

Configuration.KEYBOARD_QWERTY 用の Honeycomb 3.2 キーボード Configuration.KEYBOARD_QWERTY 用の Gingerbread 2.3.7 キーボード

4

2 に答える 2

0

この投稿があなたの質問に答えると思います。

つまり、これをコードに追加します。

editText.setRawInputType(Configuration.KEYBOARD_QWERTY);
于 2012-05-07T21:19:48.633 に答える