Selon mes recherches, il existe une différence significative entre le concept de backstack et son existence:
Lorsqu'un activity
est placé dans le backstack
de activities
, l'utilisateur peut revenir à l'activité précédente en appuyant simplement sur le bouton back
.
Activity
peut exister indépendamment.
Quand un fragment
est placé dans l'activité, nous devons demander que l'instance soit sauvegardée en appelant addToBackstack()
au cours du fragment
transaction
.
Fragment
doit vivre à l'intérieur du activity
Y a-t-il des différences supplémentaires?
Ce sont deux choses complètement différentes:
Une activité est un composant de l'application qui fournit un écran avec lequel les utilisateurs peuvent interagir afin de faire quelque chose. Plus de détails: http://developer.Android.com/guide/components/activities.html
Alors qu'un fragment représente un comportement ou une partie de l'interface utilisateur dans une activité. http://developer.Android.com/guide/components/fragments.html
Selon la documentation du développeur Android, différence entre fragment et activité dans leur cycle de vie.
Lien vers le document http://developer.Android.com/guide/components/fragments.html#Lifecycle
La différence la plus significative dans le cycle de vie entre une activité et un fragment est la manière dont celle-ci est stockée dans sa pile arrière respective. Une activité est placée par défaut dans une pile d'activités gérées par le système lors de son arrêt (afin que l'utilisateur puisse y revenir avec le bouton Précédent, comme expliqué dans la section Tâches et pile précédente). Toutefois, un fragment est placé dans une pile arrière gérée par l'activité Host uniquement lorsque vous demandez explicitement que l'instance soit sauvegardée en appelant addToBackStack () lors d'une transaction qui supprime le fragment.
Sinon, la gestion du cycle de vie des fragments est très similaire à celle du cycle de vie de l'activité. Ainsi, les mêmes pratiques de gestion du cycle de vie d'une activité s'appliquent également aux fragments. Ce que vous devez également comprendre, cependant, c'est comment la vie de l'activité affecte la vie du fragment.
& Pour les mises en page à volets multiples, vous devez utiliser fragment
que vous ne pouvez pas atteindre avec activity
.
Principales différences entre l'activité et le fragment
L'activité est l'interface utilisateur d'une application à travers laquelle l'utilisateur peut interagir et Fragment est la partie de l'activité. Il s'agit d'une sous-activité dans l'activité qui a son propre cycle de vie qui est parallèle au cycle de vie des activités.
Activity LifeCycle Fragment LifeCycle
onCreate() onAttach()
| |
onStart()______onRestart() onCreate()
| | |
onResume() | onCreateView()
| | |
onPause() | onActivityCreated()
| | |
onStop()__________| onStart()
| |
onDestroy() onResume()
|
onPause()
|
onStop()
|
onDestroyView()
|
onDestroy()
|
onDetach()
Activité
1. Les activités constituent l’un des éléments constitutifs fondamentaux des applications sur la plate-forme Android. Elles servent de point d’entrée pour les interactions d’un utilisateur avec une application. Elles sont également essentielles pour la navigation d’un utilisateur entre les applications
2. Les méthodes du cycle de vie sont hébergées par le système d'exploitation.
3. Cycle de vie de l'activité
Fragments
1. Un fragment représente un comportement ou une partie de l'interface utilisateur dans une activité. Vous pouvez combiner plusieurs fragments en une seule activité pour créer une interface utilisateur à volets multiples et réutiliser un fragment dans plusieurs activités. Vous pouvez considérer un fragment comme une section modulaire d'une activité, qui a son propre cycle de vie, reçoit ses propres événements d'entrée et que vous pouvez ajouter ou supprimer pendant l'exécution de l'activité.
2. Les méthodes de cycle de vie hébergées par sont hébergées par activité d'hébergement.
3. cycle de vie d'un fragment