Middle — Middle+
Kako možete resetovati sve aktivne fragmente u back stack-u i vratiti se na početni fragment, koristeći alternativne metode od clearBackStack?
sobes.tech АИ
Одговор од АИ
Da biste resetovali sve aktivne fragmente u steku za povratak i vratili se na početni fragment bez korišćenja clearBackStack, možete koristiti metodu popBackStack sa zastavicom POP_BACK_STACK_INCLUSIVE.
Primer:
// Pretpostavimo da početni fragment ima oznaku "start_fragment"
supportFragmentManager.popBackStack("start_fragment", FragmentManager.POP_BACK_STACK_INCLUSIVE)
Ovaj poziv će ukloniti sve fragmente iz steka do i uključujući zadatu oznaku, nakon čega možete ponovo dodati početni fragment ako je uklonjen.
Alternativno, možete koristiti petlju da redom pozivate popBackStack() dok ne ostane željeni fragment, ili koristiti metodu popBackStackImmediate za sinhrono uklanjanje.
Takođe, možete zameniti stek koristeći metodu replace() za zamenu trenutnog fragmenta i ne dodavanje transakcije u stek za povratak, čime se čisti istorija.