L'ajout d'un Fragment avec la méthode add() de ne pas cacher précédente fragments
Je suis en train de vivre "comportement inattendu" lorsque vous utilisez la méthode add() pour ajouter un nouveau fragment.
Je veux ajouter un nouveau fragment sur un FrameLayout, mais quand je le fais le fragment précédent images fixes visibles.
- Est-ce le résultat attendu lors de l'utilisation de méthode add ()?
- C'est parce que je suis à l'aide d'un FrameLayout et de la méthode add() il suffit de placer un fragment sur la FrameLayout sans affecter la précédente?
Thx
OriginalL'auteur Axel M. Garcia | 2011-06-03
Vous devez vous connecter pour publier un commentaire.
Pas un bug. Essayez de remplacer(..). au lieu de cela ajouter à la pile de retour si besoin.
MODIFIER je pense que l'utilisation de
replace
ouremove() add()
permettra de résoudre votre problème, mais comme tu en évidence vos post il y a un bug qui se manifeste sous votre ensemble particulier de circonstances.OK c'est bizarre. Pourriez-vous envoyer un peu de code. Je suis à l'aide de la compatibilité de la bibliothèque, qui a l'avantage supplémentaire d'être en mesure de débogage de la source et fais ce qui suit pour charger du fragment B à partir d'Un fragment sans problème: 'getActivity().getSupportedFragmentManager().beingTransaction.remplacer(R. id.détails, fragB).setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN).addToBackStack(null).commit();'
En outre, je vous suggère de créer une application simple avec la bibliothèque de compatibilité pour voir si cela fonctionne. Si non, alors debug pour voir ce qu'il se passe. Fondamentalement, un fragment intermédiaire de l'activité associée qui doit se mettre à null quand il est enlevé (c'est à dire en remontant). Sur l'appel de replace(), ou à ajouter() c'est l'état de l'intermédiaire de l'activité qui détermine si le fragment est considéré comme ajouté ou non.
Comme c'est un sujet différent, j'ai placé le code ici: stackoverflow.com/questions/6250580/... Comme vous pouvez le voir j'ai déjà essayé avec de la remplacer. Je ne suis pas à l'aide de la bibliothèque de compatibilité, mais peut être un bon moment pour faire le changement. J'ai une Activité conteneur, entendez-vous ce changement d'activité de son état au cours de Fragment de transitions? Mon Activité conteneur est destinée à faire face à un tas de fragments et je ne veux pas que mon Activité à être supprimés ou affectés par un bouton de retour de la presse, bien que je le désire. Ou ce que l'intermédiaire de l'activité parlez-vous? Thx
Je vous suggère de regarder FragmentStack.java pour la pile exemple de l'API de démos pour voir où il en diffère par rapport à ton code lien comme il fait exactement ce que vous voulez, peut-être vous ne devriez pas garder une référence au fragment de gestionnaire, mais l'utilisation getFragmentManager() à chaque fois, je ne sais pas. Concernant l'intermédiaire de l'activité, le Fragment a une activité, lorsque le fragment est retiré, il est mis à null et est vérifié lorsque vous ajoutez à cela (voir compatibilité lib sources).
OriginalL'auteur PJL
Autre chose simple que vous pouvez faire est d'appeler
Laissez-moi savoir si cela aide.
OriginalL'auteur Photon