input.setImeOptions(EditorInfo.IME_ACTION_DONE);を使用して、ソフトキーボードの[完了]ボタンを設定しようとしています
ただし、[完了]ボタンはソフトキーボードに表示されません。
何か提案がありますか?
public void modif(int position) {
AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.this);
alert.setTitle("Modifica");
EditText input = new EditText(MainActivity.this);
input.setImeOptions(EditorInfo.IME_ACTION_DONE);
alert.setView(input);
final Editable value = input.getText();
alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
Toast.makeText(getApplicationContext(), value, Toast.LENGTH_LONG).show();
}
});
alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
// Canceled.
}
});
alert.show();
}
入力フィールドが単一行ではないためと考えられます。
追加してみてください
input.setSingleLine();
キーボードのアクションキーを押すと、実際に「完了」アクションが実行されます(つまり、キーボードを閉じます)。
参照 http://developer.Android.com/reference/Android/view/inputmethod/EditorInfo.html#IME_ACTION_DONE