Comment mettre en œuvre WhatsApp comme la conception de matériel SearchView?
WhatsApp a une telle Barre d'outils:
Lorsque "Rechercher" du menu de l'élément cliqué, à partir du haut SearchView vient vers le bas qui prend tout l'espace de la barre d'outils:
Quand j'ai essayé de mettre en œuvre SearchView, il ressemble à ceci:
J'ai trouvé des bibliothèques pour mettre en oeuvre ce:
Android Matériau SearchView par Eugène Horan
et MaterialSearchView par krishnakapil. Mais ils ne sont pas comme dans WhatsApp.
Cette question peut paraître bizarre, je ne pouvais pas trouver la façon de le faire. Donc ma question est de savoir comment mettre en œuvre WhatsApp comme la conception de matériel SearchView qui vient du haut?
OriginalL'auteur Joe Rakhimov | 2015-10-04
Vous devez vous connecter pour publier un commentaire.
J'ai développé un bien reçu à la bibliothèque par la comunauté.
Fait exactement ce que vous cherchez.
Essayez-le et dites si s'était usufull pour vous.
Ici, c'est le dépôt Github pour MaterialSearchView.
j'ai besoin du manuel façon de le faire. Pouvez-vous svp me guider.
Trop de questions sur ce repo..
OriginalL'auteur MiguelCatalan
Désolé, j'ai mal lu la question.
Cette réponse devrait résoudre votre problème.
Répondre tiré de :- La création d'un SearchView qui ressemble à la conception de matériel de lignes directrices
Après une semaine de déroutant au cours de cette. Je crois que j'ai compris.
Je suis maintenant en utilisant simplement un EditText à l'intérieur de la Barre d'outils. Cela m'a été suggéré par oj88 sur reddit.
J'ai maintenant à ceci:
D'abord à l'intérieur de onCreate() de mon activité, j'ai ajouté l'EditText avec un affichage de l'image sur le côté droit de la Barre d'outils comme ceci:
Cela a fonctionné, mais je suis tombé sur un problème où les onOptionsItemSelected() n'a pas été appelé quand j'ai tapoté sur le bouton home. Je n'étais donc pas en mesure d'annuler la recherche en appuyant sur le bouton d'accueil. J'ai essayé quelques-uns des différents moyens d'enregistrer l'écouteur de clics sur le bouton d'accueil, mais ils n'ont pas de travail.
Finalement, j'ai trouvé que le ActionBarDrawerToggle j'ai eu des interférences avec les choses, donc je l'ai enlevé. Cet écouteur alors commencé à travailler:
Donc, je peux maintenant annuler la recherche avec le bouton home, mais je ne peux pas appuyer sur le bouton retour pour annuler. J'ai donc ajouté ceci à onBackPressed():
J'ai créé cette méthode pour activer /désactiver la visibilité de l'EditText et l'élément de menu:
J'ai besoin d'un moyen de basculer sur le bouton accueil de la barre d'outils entre le tiroir icône et le bouton de retour. J'ai finalement trouvé la méthode ci-dessous dans cette SORTE de réponse. Si je l'ai modifiée légèrement pour ne fait plus de sens pour moi:
Cela fonctionne, j'ai réussi à travailler quelques bugs que j'ai trouvé le long du chemin. Je ne pense pas que c'est 100%, mais il fonctionne assez bien pour moi.
EDIT: Si vous voulez ajouter l'affichage de la recherche en XML au lieu de Java ce faire:
toolbar.xml:
onCreate() de votre Activité:
OriginalL'auteur penta
Vous pouvez créer cette avec
android.support.v7
bibliothèqueTout d'abord créer l'élément de menu dans menu.xml comme:
Étendre AppCompatActivity et de récupérer les SearchView dans onCreateOptionsMenu comme:
C'est tout. Espérons que cela vous aide. Accepter, si vous le trouvez utile.
je pense que cette une bonne approche de l'étirement. ensuite, les gens peuvent l'étendre pour plus à l'avance de la série.
OriginalL'auteur Rahul Parihar
Je viens de poster mon open source qui imite exactement ce que whatsapp barre d'outils n' (Inclure la circulaire d'animation).
Code
Exemple complet
OriginalL'auteur Udi Oshi