Meerdere fragmenten in dezelfde ruimte?

Ik ontwikkel een Android-app met fragmenten met veel mogelijke flows. Met eenvoudige Activiteit gebaseerde stroom kan het zo stromen:

A -> B -> E
A -> C -> E
A -> D -> E

Met fragmenten zou ik graag hetzelfde kunnen doen met een scherm dat is opgedeeld in drieën. De vraag die ik stel is: in mijn lay-out XML-bestand, hoe representeer ik een ruimte die gevuld kan zijn met een van de drie verschillende fragmenten?

1

2 antwoord

Neem een ​​kijkje op FragmentTransaction.add() functie:

public abstract FragmentTransaction add (int containerViewId, ...)
  ...
    containerViewId - Optionele ID van de container waarin dit fragment moet worden geplaatst. Als 0, wordt het niet in een container geplaatst.

Met andere woorden, maak gewoon elke lege GroupView in uw xml-lay-out en voer id van deze groep in deze functie bij het toevoegen van het fragment. Verwijder het vervolgens als u het niet meer wilt.

2
toegevoegd
Ja, het zou op precies dezelfde manier moeten werken.
toegevoegd de auteur inazaruk, de bron
Ik heb zojuist naar de Android Developer Documentation gekeken en het lijkt erop dat dit de manier is waarop het moet worden gedaan. Werkt dit ook met de v4-compatibiliteitsbibliotheek (ik wil API8 en hoger ondersteunen)?
toegevoegd de auteur Nathan Moos, de bron

Als u geen fragmenten in uw activiteit hoeft te vervangen, kunt u de fragmentdeclaratie rechtstreeks in de xml plaatsen.



1
toegevoegd