onCreate wird immer aufgerufen, wenn mit Absicht zurück navigiert wird

Ich habe eine Aktivität namens HomeActivity, die eine Oberflächenansicht hat und ein Kameravorschaubild zeigt. Diese Aktivität ist ziemlich schwer und fühlt sich langsam an, wenn Sie sie starten / neu starten.

Also habe ich ein paar Nachforschungen angestellt und festgestellt, dass irgendwie immer die onCreate-Methode aufgerufen wird. Meiner Meinung nach sollte dies nicht passieren, wenn die Aktivität bereits gestartet wurde?

DasDokumentation sagt: Wird aufgerufen, wenn die Aktivität zum ersten Mal erstellt wird. Hier sollten Sie all Ihre normalen statischen Einstellungen vornehmen: Ansichten erstellen, Daten an Listen binden usw. Diese Methode bietet Ihnen auch ein Bundle mit dem zuvor eingefrorenen Status der Aktivität, falls vorhanden. Immer gefolgt von onStart ().

Hier ist die Methode, die das Zurückgehen behandelt:

protected void gotoHome() {
    final Intent intent = new Intent(SomeOtherActivity.this, HomeActivity.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivity(intent);
}

Bearbeiten:

So verlasse ich HomeActivity ... nichts Besonderes:

final Intent i = new Intent(HomeActivity.this, SomeOtherActivity.class);
startActivity(i);

Antworten auf die Frage(1)

Ihre Antwort auf die Frage