申し訳ありませんが、これはコメントのために長すぎるので、私は答え
Test1のテストを拡張しているので、テストはのhaveitすべき自身のParcelable実装として掲載しました。 この実装は、super
を使用して、すべての '子'クラスによって呼び出されます。例えば、(これは私が私のアプリケーションで使用するものです):
テストクラス
public class Tests implements Parcelable {
private int Id;
private String Name;
// parcelable
protected Tests(Parcel in) {
Id = in.readInt();
Name = in.readString();
}
public static final Creator<Tests> CREATOR = new Creator<Tests>() {
@Override
public Tests createFromParcel(Parcel in) {
return new Tests(in);
}
@Override
public Tests[] newArray(int size) {
return new Tests[size];
}
};
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeInt(Id);
dest.writeString(Name);
}
}
にTest1クラス
public class Test1 extends Tests implements Parcelable {
private int Score;
// parcelable
protected Test1(Parcel in) {
super(in);
Score = in.readInt();
}
@Override
public void writeToParcel(Parcel dest, int flags) {
super.writeToParcel(dest, flags);
dest.writeInt(Score);
}
@Override
public int describeContents() {
return 0;
}
public static final Creator<Test1> CREATOR = new Creator<Test1>() {
@Override
public Test1 createFromParcel(Parcel in) {
return new Test1(in);
}
@Override
public Test1[] newArray(int size) {
return new Test1[size];
}
};
}
出典
2016-05-10 01:45:35
kpo
あなたのテストクラスが何を拡張していますか? – AnixPasBesoin
'テスト 'はパーセル可能なものも実装していますか? – kpo
私は他のクラスから拡張していませんが、私は –