mia struttura applicazione simile:Determinare frammento backstack stato di vuoto in Android
SplashActivity -> MainActivity -> (switching between many fragments)
Cosa mi aspetto: applicazione finitura dall'attività principale quando conta frammento pila avanti è pari a zero. Ecco la mia prova:
In SplashAcitivty
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getIntent().getBooleanExtra("exit", false)) {
finish();
}
}
In MainActivity:
@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();
}
}
Quindi, per favore mi dica come posso determinare la pila indietro quando s' vuoto? Perché io uso la libreria SlideMenu
, tutti i miei frammenti cambiano più volte e vengono aggiunti allo stack posteriore quando si passa. Assomiglia a questo:
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.content_frame, fragment)
.addToBackStack(null)
.commit();
è possibile utilizzare 'getBackStackEntryCount' – dreamcoder
@dreamcoder Grazie, ha funzionato. Non credo di non sapere questo. Potresti rispondere alla mia domanda, quindi posso accettarlo? – R4j