Maison > Java > javaDidacticiel > Comment remplacer dynamiquement des fragments au sein d'un groupe d'activités ?

Comment remplacer dynamiquement des fragments au sein d'un groupe d'activités ?

Patricia Arquette
Libérer: 2024-11-18 09:25:02
original
975 Les gens l'ont consulté

How to Dynamically Replace Fragments within an Activity Group?

Remplacement de fragments au sein d'un groupe d'activités

Cette question concerne le remplacement d'un fragment au sein d'un groupe d'activités par un autre fragment. Le code fourni ne parvient pas à afficher la vue prévue lors de l'exécution sans erreur. Examinons le problème et proposons une solution.

Le problème

Le code initial tente de remplacer un fragment par l'ID R.id.book_description_fragment en le remplaçant par un SectionDescriptionFragment. Cependant, la vue ne s'affiche pas.

La solution

Les fragments définis statiquement en XML ne peuvent pas être remplacés dynamiquement. Pour résoudre cette limitation :

  1. Ajouter des fragments de manière dynamique :Ajoutez dynamiquement les fragments souhaités au groupe d'activités au moment de l'exécution pour faciliter le remplacement.
  2. Remplacer le fragment Code : Utilisez la version mise à jour suivante de l'extrait de code qui remplace dynamiquement fragments :
Fragment newFragment = new SectionDescriptionFragment();
FragmentTransaction transaction = getActivity().getFragmentManager().beginTransaction();
transaction.replace(R.id.fragment_container, newFragment);
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
transaction.addToBackStack(null);
transaction.commit();
Copier après la connexion
  1. Fragment Container ID : Assurez-vous que R.id.fragment_container correspond à la mise en page ou au conteneur au sein du groupe d'activités qui hébergera les fragments dynamiques .

Clé Notes :

  • N'oubliez pas de définir le conteneur de fragments dans la mise en page XML de votre groupe d'activités.
  • Lors du remplacement de fragments, le contenu du conteneur de fragments sera remplacé par le nouveau fragment .
  • L'utilisation de la méthode addToBackStack permet à l'utilisateur de revenir au fragment précédent.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal