Nawigacja fragmentów Androida i backstack
Mam pasek nagłówka (trochę jak menu) i 4 fragmenty (MAIN, A, B, C), z których MAIN powinien być fragmentem „main / root” dla backstacka.
Problem polega na tym, że gdy użytkownik korzysta z menu, na przykład MAIN> A> B> C. Jeśli po prostu użyję backstacka, to pójdzie w odwrotnej kolejności, której nie chcę. Potrzebuję przycisku Wstecz, aby wrócić do MAIN bez względu na to, jak użytkownik nawigował do jednego z tych 3.
Mój obecny kod (który jest nieprawidłowy, zamyka aplikację, gdy nie jest w MAIN i aktualny fragment jest przełączany z innego nie-głównego fragmentu) wygląda tak:
private void SwitchFragment(Fragment pFragment)
{
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(R.id.main_fl_fragmentcontainer, pFragment);
if (_CurrentFragment == _Frag_Main)
ft.addToBackStack(null);
ft.commit();
_CurrentFragment = pFragment;
}