2016-04-25 14 views
0

Auf Bildschirmrotation möchte ich Daten wiederherstellen. Also verwende ich onSaveInstanceState-Methode, um das zu erreichen. Immer wenn ich das Paket in onCreate wiederherstelle und es in Logcat drucke. Ich erhalte zusätzlich diese beiden Strings als Schlüssel:savedInstanceState-Paket enthält unbekannten Schlüssel

In onCreate:

if(savedInstanceState!=null){ 
    for (String key: savedInstanceState.keySet()) 
    { 
      Log.d ("TOTAL BUNDLE READING", key + "KEYS"); 
      totalfiles.add(new File(key)); 

    } 

    }else{ 
     Log.d("SAVED FILESELECT","NULL"); 
    } 

Zusätzliche diese beiden Tasten in savedInstanceState sind:

  "android:viewHierarchyState" 

      "android:support:fragments" 
+0

Diese werden von den Android-Komponenten verwendet, um ihre Staaten als auch zu speichern. – DeeV

Antwort

1

Innerhalb des Bündels von onSavedInstance, unter der Tonart “android:viewHierarchyState”, setzt Android ein weiteres Bundle-Objekt. Dieses Bündel enthält, wie der Name schon sagt, den View-Zustand. Innerhalb der Ansichts-Hierarchie speichert State Bundle Android ein SparseArray unter dem Schlüssel "android: views".

und unter dem Schlüssel "android:support:fragments" speichert Android Fragmente.

Lesen Sie mehr: http://www.intertech.com/Blog/saving-and-retrieving-android-instance-state-part-1/#ixzz46sDsZSyC