【发布时间】:2014-09-02 09:47:41
【问题描述】:
我正在尝试使用 Parcelable 对象在活动之间传递数据。使用主要变量我没有问题,但现在我需要传递另一个对象的数组,我不知道该怎么做。我正在寻找一些示例,但没有找到与我的问题类似的案例。
这是我的主体对象的源代码:
public class Quiz implements Parcelable {
int event_id;
String name;
String business_unit;
int functional_area_business; // 0 unchecked, 1 checked
int functional_area_support; // 0 unchecked, 1 checked
Answer [] list_answers;
//GETTERS AND SETTERS
...
//
public static final Parcelable.Creator<Quiz> CREATOR = new Parcelable.Creator<Quiz>() {
public Quiz createFromParcel(Parcel in) {
return new Quiz(in);
}
public Quiz[] newArray(int size) {
return new Quiz[size];
}
};
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeInt(event_id);
dest.writeString(name);
dest.writeString(business_unit);
dest.writeInt(functional_area_business);
dest.writeInt(functional_area_support);
dest.writeArray(list_answers);
}
private Quiz(Parcel in) {
event_id = in.readInt();
name = in.readString();
business_unit = in.readString();
functional_area_business = in.readInt();
functional_area_support = in.readInt();
}
}
下一个班级。
public class Answer {
int answer_id;
String value;
}
如果有人能告诉我需要修改什么,我将不胜感激。
【问题讨论】:
-
你有没有想过也为
Answer实现Parcelable? -
可以,但是不知道怎么读写数组中的数据
-
我不明白你的意思只是为
Answer实现Parcelable然后将Answer[]写入带有writeParcelableArray()的包裹。
标签: android arrays object parcelable