Mam dwie aktywności A i B. Aktywność A ma funkcję mapFragment i dodaje ją do backstack. Kiedy wracam z Actvity A z B, chcę, aby fragment ukazał się w tym samym stanie, w jakim go zostawiłem. . Ale getFragmentManager() getBackStackEntryCount() jest zwrócenie mi 0. Oto mój kod:getBackStackEntryCount() zawsze zwraca 0 nawet po dodaniu addToBackStack i executePendingTransactions()
MapFragment mMapFragment = MapFragment.newInstance();
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
mMapFragment.getMapAsync(this);
fragmentTransaction.replace(R.id.container, mMapFragment);
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
getFragmentManager().executePendingTransactions();
Po powrocie z działalności B, mam to wiedzieć liczbę getBackStackEntryCount():
System.out.println("Number of entries in backstack "+ getFragmentManager().getBackStackEntryCount());
który pokazuje mi 0.
Z góry dziękuję.
Dzięki, ale wciąż wyświetlaj 0. – user3555350
Poza przełączaniem 'replace()' przeciwko 'add()' musisz również dodać '.addToBackStack (null)' –