Ich habe ein Fragment, zum Beispiel A -> B -> C. Wenn ich im Fragment C bin, und drücke die Zurück-Taste, muss ich auf ein Fragment A bekommen Das heißt, Fragment B muss nicht zu backStack hinzugefügt werden. Hier ist der Code, der den Übergang zwischen Fragmenten implementiert.Rückkehr von Fragment C zu Fragment A Zurückdrücken Button
FragmentManager fragmentManager = this.getSupportFragmentManager();
FragmentTransaction transaction = fragmentManager.beginTransaction();
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
Fragment fragment = fragmentManager.findFragmentByTag(tag);
fragment.getArguments().putAll(args);
transaction.replace(idContainer, fragment, tag);
transaction.addToBackStack(null);
transaction.commit();
An der Öffnung des Fragments C, verwende ich nicht transaction.addToBackStack (null);
Und jetzt habe ich das folgende Problem. Aus dem Fragment C klicke ich auf den Zurück-Knopf und betrete das Fragment A, aber zwei Schichten von Fragmenten überlagern sich.
alle Fragmente in Backstack hinzufügen und dann Schleife durchlaufen, bis erste Fragment – Bhavnik
Sie viewpager verwenden? –
Vielleicht möchten Sie [diese Frage] (http://stackoverflow.com/questions/18634207/difference-between-add-replace-and-addtobackstack) überprüfen –