Sorry für mein Unverständnis, aber ich bin neu in der Android-Entwicklung.Wann wird onRestoreInstanceState aufgerufen?
Ich habe eine Anwendung mit Aktivität A und Aktivität B darin, und ich gehe von Aktivität A zu Aktivität B. Wenn ich Aktivität A verließ, wurde die onSaveInstanceState
Methode aufgerufen, aber wenn ich zurück zu Aktivität A (von Aktivität B in der gleichen Anwendung), das Bündel in der onCreate
Methode war null.
Was kann ich tun, um den vorherigen Status von Aktivität A zu speichern? Ich möchte nur die Daten für die Anwendungslebensdauer speichern.
Kann mir jemand dabei helfen?
Hier ist mein Code für A Aktivität:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (savedInstanceState != null)
{
Log.v("Main", savedInstanceState.getString("test"));
}
else
{
Log.v("Main", "old instance");
}
}
@Override
public void onSaveInstanceState(Bundle savedInstanceState)
{
Log.v("Main", "save instance");
savedInstanceState.putString("test", "my test string");
super.onSaveInstanceState(savedInstanceState);
}
public void buttonClick(View view)
{
Intent intent = new Intent(this, Activity2.class);
startActivity(intent);
}
Hier ist mein Code für Aktivität B ist, wenn ich eine Taste drücken, um Aktivität A zurück zu gehen:
public void onBack(View view)
{
NavUtils.navigateUpFromSameTask(this);
}
poste deinen Code und lass sehen, wie du das Bündel speicherst. – Triode
überprüfen Sie http://developer.android.com/reference/android/app/Activity.html#onSaveInstanceState(android.os.Bundle) – Nermeen
möglich duplizieren von http://StackOverflow.com/questions/6554317/savedinstancestate-is- immer null – npace