Android - J'ai besoin de quelques éclaircissements sur les fragments par rapport aux activités et aux vues


Answers

  1. Le fragment fait partie d'une activité, qui apporte sa propre interface à cette activité. Le fragment peut être pensé comme une sous-activité. Où comme l'écran complet avec lequel l'utilisateur interagit est appelé comme activité. Une activité peut contenir plusieurs fragments. Les fragments sont principalement une sous-partie d'une activité.

  2. Une activité peut contenir 0 ou plusieurs nombre de fragments en fonction de la taille de l'écran. Un fragment peut être réutilisé dans plusieurs activités, de sorte qu'il agit comme un composant réutilisable dans les activités.

  3. Un fragment ne peut pas exister indépendamment. Cela devrait toujours faire partie d'une activité. Où l'activité peut exister sans aucun fragment dedans.

Question

Dans Android API 11+, Google a publié une nouvelle classe appelée Fragment .

Dans les vidéos, Google suggère que chaque fois que possible ( link1 , link2 ), nous devrions utiliser des fragments au lieu des activités, mais ils n'ont pas expliqué exactement pourquoi.

Quel est le but des fragments et de leurs utilisations possibles (autres que certains exemples d'interface utilisateur qui peuvent facilement être obtenus par des vues / mises en page simples)?

Ma question concerne les fragments:

  1. Quels sont les objectifs de l'utilisation d'un fragment?
  2. Quels sont les avantages et les inconvénients de l'utilisation de fragments par rapport à l'utilisation d'activités / vues / mises en page?

Questions bonus

  1. Pouvez-vous donner des utilisations vraiment intéressantes pour les fragments? Des choses que Google n'a pas mentionné dans leurs vidéos?
  2. Quelle est la meilleure façon de communiquer entre les fragments et les activités qui les contiennent?
  3. Quelles sont les choses les plus importantes à retenir lorsque vous utilisez des fragments? Des conseils et des avertissements de votre expérience?



Un fragment est une partie de l'interface utilisateur ou du comportement d'une application qui peut être placée dans une activité qui permet une conception d'activité plus modulaire. Ce ne sera pas faux si nous disons qu'un fragment est une sorte de sous-activité.

Voici les points importants sur un fragment:

  1. Un fragment a sa propre disposition et son propre comportement avec ses propres rappels de cycle de vie.

  2. Vous pouvez ajouter ou supprimer des fragments dans une activité pendant l'exécution de l'activité.

  3. Vous pouvez combiner plusieurs fragments dans une seule activité pour créer une interface utilisateur à plusieurs volets.

  4. Un fragment peut être utilisé dans plusieurs activités.

  5. Le cycle de vie du fragment est étroitement lié au cycle de vie de son activité hôte.

  6. Lorsque l'activité est en pause, tous les fragments disponibles dans l'acivité seront également arrêtés.

  7. Un fragment peut implémenter un comportement qui n'a aucun composant d'interface utilisateur.

  8. Les fragments ont été ajoutés à l'API Android dans Android 3 (Honeycomb) avec la version 11 de l'API.

Pour plus de détails, veuillez visiter le site officiel, Fragments .




Les fragments sont particulièrement utiles dans certains cas, par exemple lorsque nous voulons conserver un tiroir de navigation dans toutes nos pages. Vous pouvez gonfler une disposition d'image avec le fragment que vous voulez et avoir toujours accès au tiroir de navigation.

Si vous aviez utilisé une activité, vous auriez dû conserver le tiroir dans toutes les activités ce qui rend le code redondant. C'est une utilisation intéressante d'un fragment.

Je suis nouveau sur Android et pense toujours qu'un fragment est utile de cette façon.




Un fragment vit à l'intérieur d'une activité.

Alors qu'une activité vit sur elle-même.




1. Quels sont les objectifs de l'utilisation d'un fragment?

  • Ans:
    1. Traiter les différences de facteur de forme de l'appareil.
    2. Passer des informations entre les écrans d'application
    3. Organisation de l'interface utilisateur
    4. Métaphores avancées de l'interface utilisateur.