SetImeOptions: почему кнопка «Готово» не отображается на мягкой клавиатуре?

Я пытаюсь установить кнопку «Готово» на экранной клавиатуре, используя 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(); } 

Solutions Collecting From Web of "SetImeOptions: почему кнопка «Готово» не отображается на мягкой клавиатуре?"

Вероятно, это связано с тем, что поле ввода не является однострочным.

Попробуйте добавить

 input.setSingleLine(); 

И вы увидите, что нажатие клавиши действия на клавиатуре действительно выполнит «сделанное» действие (т. Е. Закройте клавиатуру)

См. http://developer.android.com/reference/android/view/inputmethod/EditorInfo.html#IME_ACTION_DONE