Sie sollten die Parcelable-Schnittstelle implementieren.
Link zur Dokumentation .
Mit Parcelable Schnittstelle können Sie benutzerdefinierte Java-Objekte in die Absicht übergeben.
1) Implementieren Sie die Parcelable-Schnittstelle zu Ihrer Klasse wie folgt:
%Vor%2) Übergeben Sie das Parcelable-Objekt in die Absicht wie folgt:
%Vor%3) Holen Sie die Daten in die neue Aktivität [Abc] wie:
%Vor% a Parcel
MÖCHTE dein Problem lösen.
denke an ein Parcel
als ein "Array" (metaphorisch) primitiver Typen (long, String, Double, int usw.). Wenn Ihre benutzerdefinierte Klasse nur aus primitiven Typen besteht, ändern Sie Ihre Klassendeklaration, einschließlich implements Parcelable
.
Sie können ein parzellierbares Objekt problemlos durch eine Absicht weiterleiten (so wie Sie ein primitiv typisiertes Objekt senden würden). In diesem Fall habe ich eine parcelable benutzerdefinierte Klasse namens FarmData strong> (bestehend aus longs, strings und doubles), die ich von einer Aktivität zu einer anderen über intent übertrage.
%Vor%aber das Abrufen kann schwierig sein. Die Aktivität, die die Absicht erhält, prüft, ob ein Bündel von Extras mit der Absicht gesendet wurde.
%Vor%