对不起,这是太长了评论,所以我张贴作为一个答案
由于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
'Tests'是否也可以实现parcelable? – kpo
它不从其他类扩展,除非我假设它的对象类java –