FragmentManager.getFragment() NullPointerException

Bin ich mit dem support library v4 und dann nicht zu speichern fragment Zustand.

@Override
protected void onSaveInstanceState(Bundle outState)
{
    ...
    if(mFragment != null)
        getSupportFragmentManager().putFragment(outState, "frag", mFragment);
    ...
}
@Override
protected void onCreate(Bundle savedInstanceState)
{
    ...
    if(savedInstanceState != null)
    {
        //Here I get NullPointerException
        getSupportFragmentManager().getFragment(savedInstanceState, "frag");
    }
    ...
}

Wenn ich Anrufe, getFragment() NullPointerException geworfen wird (savedInstanceState enthält Eintrag mit "frag").

Hier ist der Teil der logcat-Ausgabe:

04-18 00:10:56.719: E/AndroidRuntime(14644): Caused by: java.lang.NullPointerException
04-18 00:10:56.719: E/AndroidRuntime(14644):    at android.support.v4.app.FragmentManagerImpl.getFragment(FragmentManager.java:569)

Auch habe ich versucht zu rufen getFragments() gibt null. Das scheint mir seltsam.

Werde ich für jede Hilfe dankbar!


Lösung:

Ich vergessen super.onSaveInstanceState(outState); innen onCreate Methode.

  • Rufen Sie onSaveInstanceState-Methode innerhalb Ihrer übergeordneten Aktivität? (sehen)
  • Ja, sehr dumm von mir, habe vergessen zu nennen super.onSaveInstanceState(outState).Ich danke Ihnen sehr!
  • Du bist herzlich willkommen. Froh, dass es jetzt funktioniert.
InformationsquelleAutor Tzoiker | 2014-04-17
Schreibe einen Kommentar