Ist es möglich, ein Objekt als Aktivitätsergebnis von einer untergeordneten Aktivität zum übergeordneten Objekt zurückzugeben? Einfach etwas wie:
%Vor% Wenn es möglich ist, wie soll ich myObject
in der übergeordneten Aktivität abrufen?
Ich habe herausgefunden, dass ich zum Abrufen von Daten so etwas tun muss:
%Vor%Die Sache ist, dass ich einen Fehler bekomme, der die Methode 'getExtra' nicht auflösen kann ....
Sie können kein Objekt zurückgeben, aber Sie können eine Absicht zurückgeben, die Ihre Objekte enthält (vorausgesetzt, sie sind primitive Typen, serialisierbar oder parzellierbar).
In Ihrer untergeordneten Aktivität lautet der Code etwa:
%Vor% In Ihrer übergeordneten Aktivität müssen Sie die untergeordnete Aktivität mit startActivityForResult
:
und dann in onActivityResult
:
Sie können über die Methoden auf der Aktivitäts-Javadoc-Seite nachlesen.
Schauen Sie sich diese Antwort an, die erklärt wie man startActivityForResult
und onActivityResult
benutzt.
Dieser Prozess kann für jedes Objekt verwendet werden, das Serializable
oder Parcelable
ist. Wenn also myObject
eine benutzerdefinierte Klasse ist, die Sie erstellt haben, müssen Sie eine dieser Schnittstellen implementieren.
Sie können setResult (int) verwenden, um die Android-Aktivitätenreferenz zu lesen , speziell Aktivitäten starten und Ergebnisse erzielen.
Tags und Links android android-activity android-intent