2012-01-18 54 views
0

私はアプリを持っていますが、1つのアクティビティは複数のフィールドを持つフォームです。横長モードで最初のフィールドをクリックすると、「次へ」ボタンでフルスクリーンIMEが起動します。IMEが横画面で表示されない - 次のボタンが反応しない

しかし、「次へ」ボタンはまったく反応しません。エラーはスローされず、これに関連するログも記録されません。次の(約12)のテキストフィールドには移動しません。

他のフィールドがフォーム上で選択され、横書きビューで入力/入力されなかった場合の動作(不足) - 非応答の次のボタン。

最後のEditTextフィールドには、「完了」ボタンが正しく表示されます...これも応答しません。

フォーラムを検索してグーグルで遊んだことはありませんでした。この点については、IMEに関連するものは何も見つかりませんでした。

1つのオプションはもちろん、ポートレートモード(これはうまくいきます)を強制することですが、むしろそれほど難しい回避策は避けたいと思います。

これに関連するコード/例へのご意見、ご要望があれば幸いです。

答えて

2

EditTextレイアウトでアンドロイド:imeOptions = "actionDone"を使用して解決されます。次の要素がEditTextビューでない場合、またはフォームの最後にある場合です。他のすべてのEditTextレイアウトはandroid:imeOptions = "actionNext"を追加しました。

これは、次のフィールドがボタンまたはスピナー(EditText以外のフィールド)であればIMEからEditTextを作成して、EditTextを次のEditTextに移動するために、ランドスケープビューの全画面IMEを許可し、最後のフォームフィールドの後の全画面IME

+0

私にとっては、次のテキストも編集していません。私はkeyDownイベントを処理しなければならないと言っているもう1つの記事を読んだので、次のeditTextに行くためにフォーカスを要求しなければなりません。 – Ankit

関連する問題