Je sais qu'ils Activities
sont conçus pour représenter un seul écran de mon application, alors qu'ils Fragments
sont conçus pour être des mises en page d'interface utilisateur réutilisables avec une logique intégrée à l'intérieur.
Jusqu'à il n'y a pas longtemps, j'ai développé une application qui disait qu'il fallait les développer. J'ai créé un Activity
pour représenter un écran de mon application et utilisé des fragments pour ViewPager
ou Google Maps
. J'ai rarement créé une ListFragment
ou une autre interface utilisateur qui peut être réutilisée plusieurs fois.
Récemment, je suis tombé sur un projet qui ne contient que 2 l' Activities
un est un SettingsActivity
et l'autre est le MainActivity
. La disposition du MainActivity
est remplie de nombreux fragments d'interface utilisateur en plein écran cachés et un seul est affiché. Dans la Activity
logique il y en a beaucoup FragmentTransitions
entre les différents écrans de l'application.
Ce que j'ai aimé dans cette approche, c'est que parce que l'application utilise un ActionBar
, elle reste intacte et ne bouge pas avec l'animation de changement d'écran, ce qui se produit avec le Activity
changement. Cela donne une sensation plus fluide à ces transitions d'écran.
Donc je suppose que ce que je demande, c'est de partager votre manière de développement actuelle sur ce sujet, je sais que cela pourrait ressembler à une question d'opinion à première vue, mais je la vois comme une question de conception et d'architecture Android ... Pas vraiment un basé sur une opinion.
MISE À JOUR (01.05.2014): Suite à cette présentation par Eric Burke de Square , (ce que je dois dire est une excellente présentation avec beaucoup d'outils utiles pour les développeurs Android. Et je n'ai aucun lien avec Square)
http://www.infoq.com/presentations/Android-Design/
D'après mon expérience personnelle au cours des derniers mois, j'ai trouvé que la meilleure façon de construire mes applications est de créer des groupes de fragments qui viennent représenter un flux dans l'application et présenter tous ces fragments en un Activity
. Donc, fondamentalement, vous aurez le même nombre de Activities
dans votre application que le nombre de flux. De cette façon, la barre d'action reste intacte sur tous les écrans du flux, mais est recréée en modifiant un flux, ce qui a beaucoup de sens. Comme le déclare Eric Burke et comme je l'ai compris, la philosophie d'utiliser le moins Activities
possible n'est pas applicable à toutes les situations car elle crée un gâchis dans ce qu'il appelle l'activité «Dieu».