Existe-t-il une méthode setText () pour SearchView ou quelque chose comme ça? J'essaie de définir le texte de recherche dans le searchView comme ceci mais il n'y a pas de méthode pour cela.
searchView.setText(searchToken);
android
searchview
Khaled Annajar
la source
la source
true
pour que la requête soit également exécutée, mais notez que bien que la requête soit bien exécutée, la zone de texte reste vide, jusqu'à ce que le focus soit manuellement. Comment puis-je m'assurer que la valeur définie automatiquement s'affiche également automatiquement?Vous pouvez utiliser
setQuery()
pour modifier le texte dans la zone de texte.Cependant, la
setQuery()
méthode déclenche l'état de mise au point d'une vue de recherche, de sorte qu'un clavier s'affiche à l'écran une fois que cette méthode a été appelée.Pour résoudre ce problème, appelez simplement la méthode
searchView.clearFocus()
aprèssetQuery()
pour la déconcentrer et le clavier ne s'affichera pas à l'écran.Exemple:
la source
Si vous voulez pré-enregistrer votre
SearchView
avec du texte,searchView.setQuery(text, false)
cela ne fonctionnera pas immédiatement. la raison est quandSearchView
se développesearchView.onActionViewExpanded()
obtenir appelé qui appelle
searchView.setText("")
et efface tout texte que nous avons défini.La solution consiste à définir un écouteur Expand et à définir le texte de pré-fichier une fois que le
SearchView
fichier est développéla source
C'est ce qui a fonctionné pour moi
la source
Si vous voulez que le searchView se développe et qu'il puisse être réduit à une icône après que l'utilisateur ait tapé x (fermer), la manière est:
REMARQUE: si vous le développez en utilisant:
searchView ne rétrécira pas après que l'utilisateur ait appuyé sur x (fermer)
la source