2016-05-07 11 views
0

Ich habe eine Basisklasse für die Verwaltung von Fragment in meiner Aktivität. welches Fragment backstack, opening etc. behandelt, aber bei Orientation change wird dieses Objekt null und ich verliere meinen gesamten Fragmentstatus.Nach Bildschirmausrichtung ändern Aktivität Klassenmitgliedsvariable (Objekt) Verlust

public class Dashboard extends AbstractNavDrawerActivity implements AsyncRequest 
    .OnAsyncRequestComplete { 

BaseFragmentOrganizer fragmentOrganizer;//object that manages backstack and other operation 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
//on orientation change fragmentOrganizer becomes null so no more backstack. 
    if (savedInstanceState == null) { 
     fragmentOrganizer = new MainFragmentOrganizer(getSupportFragmentManager()); 
    } 
+0

Überprüfen Sie diese http://stackoverflow.com/questions/15313598/once-for-all-how-to-correctly-save-instance-state-of-fragments-in-backstack –

Antwort

1

Sie müssen nur android:configChanges="orientation|screenSize" auf Ihre Aktivität in manifest Datei hinzuzufügen.

es wird nicht Ihre Aktivität neu erstellen.

+0

ich bin bekannt von es. aber ist diese einzige lösung bcoz offiziell android entwickler dies nicht empfehlen. –

+0

Ich weiß nicht darüber. aber was auch immer Ihre Codierung einfach macht, ist großartig. das ist, was ich glaube. –

+0

für jetzt ist dies nur eine Lösung für mich. Vielen Dank für Ihre Antwort. –