Sie onActivityResult
verwenden können, für die Rückkehr von einer anderen Aktivität zu überprüfen. Setzen Sie diesen Code in Ihre a2 Aktivität ...
den Anforderungscode als Konstante deklarieren an der Spitze Ihrer Aktivität:
public static final int OPEN_NEW_ACTIVITY = 123456;
diese setzen, wo Sie die neue Tätigkeit beginnen:
Intent intent = new Intent(this, NewActivity.class);
startActivityForResult(intent, OPEN_NEW_ACTIVITY);
Tun Sie etwas, wenn die Aktivität beendet ist. Die Dokumentation schlägt vor, dass Sie resultCode
verwenden, aber je nach Situation kann Ihr Ergebnis entweder RESULT_OK
oder RESULT_CANCELED
sein, wenn die Schaltfläche gedrückt wird. Also würde ich es weglassen.
Aus irgendeinem Grund hatte ich Schwierigkeiten, wenn ich dies in ein Fragment legte. Sie müssen es also in die Aktivität einfügen.
Sie müssen eigentlich keinen Code in die a3-Aktivität einfügen, aber Sie können Daten zurück senden, wenn Sie möchten.
Sie meinen, wenn Sie die Zurück-Taste bei a2 drücken, wird es Sie an a3 übergeben? – DavidBalas
Wenn Sie a2 von a1 aufrufen, fügen Sie ein Extra in der Absicht hinzu, um anzuzeigen, dass es sich um a1 handelt. Dieses Extra würde also nicht existieren, wenn a2 bei einem Backpress von a3 erreicht würde.Ich habe das nicht versucht, klingt aber theoretisch plausibel. – faizal
Mögliche Duplikate von [Wie zu erkennen, wenn von Kind Aktivität zurückkam?] (Https://stackoverflow.com/questions/7982081/how-to-detect-if-came-back-from-child-activity) –