Je souhaite créer une pile de plusieurs fragments inclus dans la mise en page linéaire. Pour mettre ensemble de fragments à activty j'utiliser le code ci-dessous (R.id.content est LinearLayout):Backstack avec plusieurs fragments par mise en page
private void pushToBackStack(final Fragment... fragments) {
final FragmentManager fm = getSupportFragmentManager();
final FragmentTransaction ft = fm.beginTransaction();
for (int i = 0; i < fragments.length; i++) {
if (i == 0) {
ft.replace(R.id.content, fragments[i]);
} else {
ft.add(R.id.content, fragments[i]);
}
}
ft.addToBackStack(null);
ft.commit();
}
quand j'appelle
pushToBackStack(f1, f2);
pushToBackStack(f3, f4);
pushToBackStack(f5, f6);
il es f3, et f6 visibles f5 sur l'écran et après avoir appuyé sur le bouton Retour f2, f3, f4 sont affichés.
comportement attendu est f5, f6 -> Retour -> f3, f4 -> Back-> f1, f2