My struktury aplikacji wyglądać następująco:Określić fragment backstack stan pusty w android
SplashActivity -> MainActivity -> (switching between many fragments)
Czego oczekuję: aplikacja wykończenie z działalności podstawowej, gdy liczba fragment z powrotem stos wynosi zero. Oto moja próba:
W SplashAcitivty
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getIntent().getBooleanExtra("exit", false)) {
finish();
}
}
W główną działalność:
@Override
public void onBackPressed() {
// I need to implement this method
if(backstackCount() == 0){
Intent intent = new Intent(this, SplashActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra(SplashActivity.EXIT_KEY, true);
startActivity(intent);
}else{
super.onBackPressed();
}
}
Więc proszę mi powiedzieć jak mogę określić stos z powrotem kiedy jest pusta? Ponieważ używam biblioteki SlideMenu
, wszystkie moje fragmenty przełączają się wiele razy i są dodawane do tylnego stosu podczas przełączania. Wygląda tak:
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.content_frame, fragment)
.addToBackStack(null)
.commit();
możesz użyć 'getBackStackEntryCount' – dreamcoder
@dreamcoder Dzięki, zadziałało. Nie wierzę, że nie znam tego. Czy mógłbyś odpowiedzieć na moje pytanie, a następnie mogę to zaakceptować? – R4j