レイアウトには、4つのEditTextビューと送信ボタンビューがあります。最初の3つのEditTextの「次へ」ボタンと、ソフトキーボードの「改行」キーの代わりに、4番目のEditTextフィールドの「完了」ボタンが必要です。
これをどのように行うことができますか?
レイアウトで、XML属性を設定するAndroid:imeOptions="actionNext"
最初の3つのテキストボックスとAndroid:imeOptions="actionDone"
最後の1つ。
参照: Android:imeOptions documentation
また、 training docs には小さなXMLの例があります。
次の編集フィールドにフォーカスを移動するには
Android:imeOptions = "flagNavigateNext"
[追加]をクリックしてソフトキーを閉じる
Android:imeOptions = "actionDone"
あなたのレイアウトに:)
追加 Android:singleLine="true"
ボタンxml内
あなたが探しているのは次のようなものだと思います:
EditText nextText = new EditText(this)
{
@Override
public InputConnection onCreateInputConnection(final EditorInfo outAttrs)
{
outAttrs.imeOptions |= EditorInfo.IME_ACTION_NEXT;
return (super.onCreateInputConnection(outAttrs));
}
};
EditText doneText = new EditText(this)
{
@Override
public InputConnection onCreateInputConnection(final EditorInfo outAttrs)
{
outAttrs.imeOptions |= EditorInfo.IME_ACTION_DONE;
return (super.onCreateInputConnection(outAttrs));
}
};
最初に、テキストを受け入れるレイアウトの次のフィールドにユーザーを移動します。 2番目はIME(ソフトキーボード)を閉じます。