Duplicata possible:
diapositive de style Facebook Android
Facebook a récemment publié une nouvelle version de son Android qui propose une navigation améliorée. Une nouvelle fonctionnalité principale est le nouveau menu (qui existait déjà sur la version iOS):
En cliquant sur le bouton d'accueil de la barre d'actions, ce menu glisse de gauche à droite, masquant l'activité principale qui n'est plus accessible.
Comment pensez-vous que ce menu a été créé? Pensez-vous qu'ils viennent de jouer avec le SlidingDrawer
ou est-ce autre chose comme un ViewPager
?
Merci!
[~ # ~] modifier [~ # ~]
Il n'y a aucun moyen que ce soit l'un des deux (ViewPager
ou SlidingDrawer
). Ce n'est pas le menu qui glisse, c'est l'écran principal qui s'éloigne en ne laissant qu'une infime partie de celui-ci à l'écran. C'est comme si le menu était déjà derrière cet écran principal et qu'il venait d'être découvert. Et deuxième chose, nous pouvons en fait encore interagir avec cet écran principal (sinon j'aurais supposé qu'ils ont pris une capture d'écran afin d'en couper une toute petite partie pour composer cette vue).
Je cherchais à implémenter la même chose et j'ai trouvé une solution qui est assez bonne (ou qui est peut-être vraiment proche de ce qu'ils ont fait).
Donc, ce que j'ai fait était un seul FrameLayout avec les deux mises en page empilées ensemble, puis j'anime simplement la mise en page du haut pour glisser vers la droite de l'écran (il suffit d'appeler le slideTo ou scrollBy. Et en gros c'est ça! Assez simple et efficace !
ÉDITER:
J'ai répondu à une question similaire ici avec quelques exemples de code, profitez =): Cliquez ici
Presque tout sauf les parties de prise de photo se trouve dans une WebView dans la nouvelle application FB. Je n'ai trouvé aucun contrôle natif Android UI dans le flux ou les listes.
Faire le même effet en utilisant Javascript/HTML/CSS devrait être assez facile je pense.
Décompiler l'apk donnerait une meilleure idée.
Vous pouvez créer ce style d'application en utilisant javascript, HTML5 et CSS3 comme il montre cette petite bibliothèque "jbackbone-mobile", https://github.com/mjromper/jbackbone-mobile
et voir cette démo depuis n'importe quel navigateur (appareil ou bureau) http://lab.ochio.com.es/jbackbone/index.html