2016-07-11 3 views
0

Ich habe 3 Aktivitäten A, B und C.Android java.lang.NullPointerException wenn Pfeil-Navigation von Symbolleiste

Aus Aktivität A mit zurück, ich sende ein Intent an Aktivität B.

Basierend auf dem Inhalt von der Intent, zeige ich Bild 1 oder 2 in Aktivität B. Von der gleichen Aktivität BI gehen Sie zu Aktivität C, um mehr Informationen basierend auf der gleichen Absicht anzuzeigen.

in der Navigationsleiste Zurück-Pfeil von Aktivität C nach B, ich habe einen Fehler:

java.lang.NullPointerException

Mit der if-Anweisung ich den Fehler behoben, aber ich kann die gleiche Absicht Info der wieder entweder angezeigt werden das Bild 1 oder 2, weil die Intent jetzt NULL ist.

+1

Bitte zeigen Sie den vollständigen StackTrace und ein [mcve] –

+0

Sie müssen die Absicht Daten vor dem C Formular B speichern und verwenden Sie das wieder nach B von C –

+0

Exception oder mehr Code würde helfen, die wissen genaues Problem –

Antwort

0

Wenn Sie die Zurück-Schaltfläche in der Symbolleiste drücken, starten Sie die vorherige Aktivität, indem Sie die erforderliche Absicht senden.

Wenn Sie die nächste Aktivität starten, rufen Sie finish() auf, damit dies funktioniert. Andernfalls müssen Sie die Methode newIntent() überschreiben, um die übergebenen Intents zu behandeln.

Eg .. wenn Sie wieder von C-Aktivität klicken, so etwas wie:

Intent newIntentforBActivity = new Intent(); 
newIntentforBActivity.putExtra("myIntent","yourdata"); 
startActivity(newIntentforBActivity); 
finish(); 

einfach eine neue Absicht mit den notwendigen Argumente zurückschicken. Die Logik zum Ablegen Ihrer Daten hängt von Ihrer Logik ab.

Verwandte Themen