Se lancio un DialogFragment da un'attività, cosa succede quando chiudo DialogFragment? L'attività passa attraverso lo stato di rendimento? Oppure la chiamata è una normale chiamata java in modo che la riga successiva non venga mai eseguita fino a quando DialogFragment non viene chiuso?in che modo DialogFragment influisce sul ciclo di vita dell'attività di chiamata
Supponiamo che il metodo per lanciare la mia frammento è
private void launchFragment(){
ConfirmationDialog confirm = new ConfirmationDialog();
confirm.show(getSupportFragmentManager(), "confirm");
doMoreStuff();
}
Quindi la mia domanda è duplice:
- quando è
doMoreStuff()
chiama? Prima o dopo chiudo il frammento per tornare all'attività padre? - Dopo aver chiuso il frammento per tornare all'attività padre, l'attività padre passa attraverso il risultato: in modo che se ho un controllo per qualche campo modificato dal frammento, posso lavorare in onResume in base allo stato di quello field:
Come nel seguente esempio:
@Override
public void onResume() {
super.onResume();
if(dialogFragmentChangedThis){
workSomeMore();
}
}
il frammento viene lanciata con
setStyle(STYLE_NO_FRAME, android.R.style.Theme_Translucent_NoTitleBar_Fullscreen);
modo che sia in modalità schermo intero.
Ho pensato di implementare un'interfaccia di callback personalizzata, ma speravo che ci fosse un modo più semplice di quello; tale sostegno piggy sul ciclo di vita. –