Ich habe die folgenden Modelle:Liste speichern <Object> zum Beispiel Zustand mit Parcel
GitItem:
public class GitItem implements Serializable, Parcelable {
public int id;
public String name;
public String full_name;
public GitOwner owner;
public GitItem() {
}
public GitItem(Parcel in) {
id = in.readInt();
name = in.readString();
full_name = in.readString();
}
public int describeContents() {
return 0;
}
public void writeToParcel(Parcel out, int flags){
out.writeInt(id);
out.writeString(name);
out.writeString(full_name);
}
public static final Parcelable.Creator<GitItem> CREATOR = new Parcelable.Creator<GitItem>(){
@Override
public GitItem createFromParcel(Parcel source) {
return new GitItem(source);
}
@Override
public GitItem[] newArray(int size) {
return new GitItem[size];
}
};
}
und GitOwner:
public class GitOwner implements Serializable, Parcelable {
public String avatar_url;
public GitOwner(Parcel in) {
avatar_url = in.readString();
}
public GitOwner() {
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
}
public static final Parcelable.Creator<GitOwner> CREATOR = new Parcelable.Creator<GitOwner>(){
@Override
public GitOwner createFromParcel(Parcel source) {
return new GitOwner(source);
}
@Override
public GitOwner[] newArray(int size) {
return new GitOwner[size];
}
};
}
und dann in MainActivity. Java Ich habe eine List<GitItem> data;
, die an meine RecyclerView
gebunden ist.
Grundsätzlich was ich versuche zu erreichen, ist den aktuellen Zustand meiner List<GitItem>
zu speichern, wenn ich Activity
ändern oder einfach Gerät drehen. Leider konnte ich die Instanz nicht speichern, obwohl ich Parcelable
implementiert habe (wie von anderen Posts vorgeschlagen).
Jede Hilfe in dieser Angelegenheit würde sehr geschätzt werden.
funktioniert wie ein Charme! –