web-dev-qa-db-fra.com

Comment configurer edittext pour afficher le bouton de recherche ou le bouton d'entrée sur le clavier?

Comment définir EditText pour afficher le bouton de recherche ou le bouton de saisie sur le clavier? 

48
user790156

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;
    }
});
59
success_anil

Dans votre mise en page, définissez la méthode de saisie sur option pour 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;
    }
});
189
Rahul Sharma
  Android:singleLine="true"
  Android:imeOptions="actionSearch"
15
Sujith Manjavana

La procédure suivante explique comment configurer un AutoCompleteTextView qui fournit des suggestions à partir d'un tableau, à l'aide de ArrayAdapter:

1 - / Ajoutez AutoCompleteTextView à votre mise en page. Voici une mise en page avec seulement le champ de texte:

<?xml version="1.0" encoding="utf-8"?>
<AutoCompleteTextView xmlns:Android="http://schemas.Android.com/apk/res/Android" 
    Android:id="@+id/autocomplete_country"
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content" />

2 - Définit le tableau contenant toutes les suggestions de texte. Par exemple, voici un tableau de noms de pays défini dans un fichier de ressources XML (res/values ​​/ strings.xml):

    <?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="countries_array">
        <item>Afghanistan</item>
        <item>Albania</item>
        <item>Algeria</item>
        <item>American Samoa</item>
        <item>Andorra</item>
        <item>Angola</item>
        <item>Anguilla</item>
        <item>Antarctica</item>
        ...
    </string-array>
</resources>

3 - Dans votre activité ou fragment, utilisez le code suivant pour spécifier l'adaptateur qui fournit les suggestions:

// Get a reference to the AutoCompleteTextView in the layout
AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.autocomplete_country);
// Get the string array
String[] countries = getResources().getStringArray(R.array.countries_array);
// Create the adapter and set it to the AutoCompleteTextView 
ArrayAdapter<String> adapter = 
        new ArrayAdapter<String>(this, Android.R.layout.simple_list_item_1, countries);
textView.setAdapter(adapter);

Ici, un nouvel ArrayAdapter est initialisé pour lier chaque élément du tableau de chaînes COUNTRIES à un TextView existant dans la présentation simple_list_item_1 (il s'agit d'une présentation fournie par Android qui fournit une apparence standard pour le texte d'une liste) . l'adaptateur à AutoCompleteTextView en appelant setAdapter ().

3
Thep TK

Vous pouvez modifier le clavier disponible en utilisant inputType pour la variable EditText.

<EditText Android:inputType="number"/>

documentation XML

...ou...

editText.setInputType(int);

Documentation du code

0
nicholas.hauschild

Faites votre edittext comme ça.

    <EditText
        Android:id="@+id/s_search"
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content"
        Android:textColor="#000"
        Android:textSize="15dp"
        Android:imeOptions="actionSearch"
        Android:inputType="text"
        Android:hint="Enter search" />
0
mehmoodnisar125