imeOptions "actionNext" programáticamente-¿cómo saltar al siguiente campo?


En layout XML es posible especificar android:imeOptions="actionNext" que añade el botón Next en el teclado virtual y haciendo clic en él - focus salta al siguiente campo.

¿Cómo hacer esto programáticamente - por ejemplo, basado en algún foco de activación de evento para ir al siguiente campo?

Author: Laimoncijus, 2010-08-11

4 answers

Puede usar las constantes de la clase EditorInfo para las opciones de IME. como,

editText.setImeOptions(EditorInfo.IME_ACTION_NEXT);
 155
Author: Firewall_Sudhan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-02-08 05:58:58

Busca el siguiente campo enfocable y luego invoca requestFocus().

TextView nextField = (TextView)currentField.focusSearch(View.FOCUS_RIGHT);
nextField.requestFocus();
 24
Author: Justin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-08-11 14:13:18

Solo sugerencia, si está utilizando

     EditTextSample.setImeOptions(EditorInfo.IME_ACTION_DONE); 

No funciona, asegúrese de que su EditText está usando una sola línea.

Eg:

       editTextSample.setSingleLine();
 15
Author: ziniestro,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-12-27 07:52:32

Siempre hay necesidad de agregar claves adicionales aparte de las claves predeterminadas disponibles en virtual QWERTY teclado.

Usando XML

<EditText android:text="@+id/EditText01" 
android:id="@+id/EditText01"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:imeOptions="actionDone"/>

By Programmatic Way

Una EditorInfo es la clase más útil cuando tienes que lidiar con cualquier tipo de entrada de usuario en tu aplicación Android.

IME_ACTION_DONE: Esta acción realiza una operación "done" para que nada ingrese y el IME se cerrará.

 EditTextSample.setImeOptions(EditorInfo.IME_ACTION_DONE);

Para más información puede visitar http://developer.android.com/reference/android/view/inputmethod/EditorInfo.html

 8
Author: IntelliJ Amiya,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-05-04 11:03:09