Wollen Sie extra und die onCreate-Methode?

8

Ich habe die Klassen A, B und C. Klasse A sendet die Absicht an B, B läuft an C, C kehrt an B zurück ..... aber dann innerhalb der Klasse onCreate der Klasse B möchte sie die Absicht der Klasse A. Aber weil es von der Klasse C kommt, bekommt es es nicht, aber ich brauche immer noch die Absicht der Klasse A

Irgendeine Idee, wie Sie das umgehen können? Ich denke, eine Lösung könnte sein, den extra.getString in einer Datenbank oder ähnlichem zu speichern?

%Vor%     
user1876202 10.03.2013, 20:16
quelle

2 Antworten

2

Wenn ich es richtig verstanden habe:

Aktiv A:

  • Erzeugt intentAtoB
  • Startet Aktivität B

Aktiv B

  • Erhält intentAtoB
  • Erzeugt intentBtoC
  • Startet die Aktivität C

Aktivität C

  • Erhalten Sie intentBtoC
  • macht etwas

Jetzt: Tut Aktivität C:

  1. kehren Sie mit der Funktion finish () oder

  2. zu Aktivität B zurück
  3. Starten Sie erneut Aktivität B?

Wenn 1, wenn Sie zu Aktivität B zurückkehren, hat es immer noch alles, was Sie beim ersten Erstellen eingerichtet haben. Sie müssen also alles aus der Absicht in onCreate von B extrahieren.

Wenn 2, müssen Sie einfach die Informationen in der Absicht, die Sie zum Starten jeder Aktivität verwenden, in der Kette weiterleiten.

Wenn Sie (a) bestätigen könnten, was die Sequenz if und (b) klarstellen würde, warum das Obige nicht funktioniert, bin ich sicher, dass wir vorwärts gehen können.

    
Neil Townsend 11.03.2013, 09:15
quelle
5

Da ich Ihren Aktivitäten-Flow nicht genau kenne, ist dies eine Lösung, aber möglicherweise nicht die richtige.

Wenn Sie eine neue Aktivität starten, legen Sie einen zusätzlichen

%Vor%

Auf die empfangende Aktivität

%Vor%     
Hoan Nguyen 10.03.2013 20:48
quelle