web-dev-qa-db-fra.com

imeOptions "actionNext" par programme - comment passer au champ suivant?

Dans XML de présentation, il est possible de spécifier Android:imeOptions="actionNext" qui ajoute le bouton Next au clavier virtuel et en cliquant dessus - le focus passe au champ suivant.

Comment procéder par programme - par exemple sur la base d'un élément déclencheur d'événement pour passer au champ suivant?

77
Laimoncijus

Vous pouvez utiliser les constantes de la classe EditorInfo pour les options IME. comme,

editText.setImeOptions(EditorInfo.IME_ACTION_NEXT);
162
Firewall_Sudhan

Recherchez le prochain champ pouvant être mis au point et appelez requestFocus().

TextView nextField = (TextView)currentField.focusSearch(View.FOCUS_RIGHT);
nextField.requestFocus();
26
Justin

Juste une suggestion, si vous utilisez 

     EditTextSample.setImeOptions(EditorInfo.IME_ACTION_DONE); 

cela ne fonctionne pas, assurez-vous que votre EditText utilise une seule ligne.

Par exemple:

       editTextSample.setSingleLine();
15
ziniestro

Il est toujours nécessaire d’ajouter des touches supplémentaires en plus des touches par défaut disponibles dans le clavier virtuel QWERTY

Utiliser 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 

Une classe EditorInfo est la plus utile lorsque vous devez traiter n'importe quel type de saisie utilisateur dans votre application Android.

IME_ACTION_DONE: Cette action effectue une opération “terminé” sans rien entrer et l'IME sera fermé.

 EditTextSample.setImeOptions(EditorInfo.IME_ACTION_DONE);

Pour plus d'informations, vous pouvez visiter http://developer.Android.com/reference/Android/view/inputmethod/EditorInfo.html

8
IntelliJ Amiya
editText.setLines(1);
editText.setSingleLine(true);
editText.setImeOptions(EditorInfo.IME_ACTION_GO);

Je résous le problème assurez-vous avec une seule ligne et passez à editText lorsque vous cliquez sur entrer

0
Handelika

Le pendentif kotlin

editText.imeOptions = EditorInfo.IME_ACTION_DONE
0
kuzdu