67 votes

Comment définir edittext pour afficher le bouton de recherche ou entrer le bouton sur le clavier ?

Comment définir EditText pour afficher le bouton Rechercher ou entrer le bouton sur le clavier ?

220voto

Rahul Sharma Points 1491

Dans votre mise en page, définissez la méthode de saisie sur l'option Rechercher

  <EditText 
  android:imeOptions="actionSearch"
  android:inputType="text"/>

et dans l'utilisation du code java

 editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if (actionId == EditorInfo.IME_ACTION_SEARCH) {
            performSearch();
            return true;
        }
        return false;
    }
});

112voto

success_anil Points 1802

Utilisez le code pour modifier l'attribut EditText

 <EditText android:imeOptions="actionSearch" />

Ensuite, faites ceci dans votre code java :

 editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        if (actionId == EditorInfo.IME_ACTION_SEARCH) {
            performSearch();
            return true;
        }
        return false;
    }
});

18voto

Sujith Manjavana Points 131
  android:singleLine="true"
  android:imeOptions="actionSearch"

3voto

Savita Sharma Points 164

définissez ces deux champs pour afficher l'icône de recherche sur le clavier.

             android:imeOptions="actionSearch"
            android:imeActionLabel="@string/search"

et aussi si vous devez effectuer une action sur le bouton de recherche du clavier, vous devez ajouter le code suivant.

     etSearch.setOnEditorActionListener((v, actionId, event) -> {
        if (actionId == EditorInfo.IME_ACTION_SEARCH) {
              search();     // you can do anything
            return true;
        }
        return false;
    });

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X