Das ist meine onCreate Methode in einer Klasse ist, die Unterklasse von Fragmente istsavedInstanceState ist immer null-Wert in onCreate
static int counter = 0;
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
if(savedInstanceState == null) { //made for first time
Log.d("came in", "Came in");
counter = 0;
} else {
counter = savedInstanceState.getInt("counter", 0);
}
}
das ist meine savedInstanceState Methode
@Override
public void onSaveInstanceState(Bundle outState){
super.onSaveInstanceState(outState);
Log.d("hi there", ""+counter); // this is printing hi there 3
outState.putInt("counter", counter);//key value pair
}
aber in onCreate Methode savedInstanceState ist immer null und Drucken kam herein.
Der gespeicherte Zustand wiederhergestellt wird, wenn sich der Aktivitätszustand, das heißt vor allem auf Konfigurationsänderungen (Rotation und dergleichen) eingefroren. Es gibt keinen gespeicherten Zustand, wenn Sie z.B. Erstellen Sie die Aktivität von Grund auf neu. Haben Sie erwartet, dass der gespeicherte Zustand beharrlicher ist als er? – dhke
Ich möchte Zählervariable erhalten, wenn ich den Bildschirm rotiere. –