通过android活动传递arraylist
当您在com.netvariant.zain.model.Question类上获得名为Creator的错误Parcelable.Creator对象时,您需要在问题类中实现一个Creator,如下所示:通过android活动传递arraylist,android,arraylist,Android,Arraylist,当您在com.netvariant.zain.model.Question类上获得名为Creator的错误Parcelable.Creator对象时,您需要在问题类中实现一个Creator,如下所示: public String getSubTitle() { return subTitle; } public void setSubTitle(String subTitle) { this.subTitle = subTitle; } public String getId
public String getSubTitle() {
return subTitle;
}
public void setSubTitle(String subTitle) {
this.subTitle = subTitle;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getLatitude() {
return latitude;
}
public void setLatitude(String latitude) {
this.latitude = latitude;
}
public String getLongitude() {
return longitude;
}
public void setLongitude(String longitude) {
this.longitude = longitude;
}
String title="";
String subTitle="";
String id="";
String url="";
String latitude="";
String longitude="";
public Question(String title, String subTitle, String id, String url, String latitude, String longitude) {
this.title = title;
this.subTitle = subTitle;
this.id = id;
this.url = url;
this.latitude = latitude;
this.longitude = longitude;
}
// Your existing methods go here. (There is no need for me to re-write them.)
// The following methods that are required for using Parcelable
private Question(Parcel in) {
// This order must match the order in writeToParcel()
title = in.readString();
subTitle = in.readString();
id = in.readString();
url = in.readString();
latitude = in.readString();
longitude = in.readString();
// Continue doing this for the rest of your member data
}
public void writeToParcel(Parcel out, int flags) {
// Again this order must match the Question(Parcel) constructor
out.writeString(title);
out.writeString(subTitle);
out.writeString(id);
out.writeString(url);
out.writeString(latitude);
out.writeString(longitude);
// Again continue doing this for the rest of your member data
}
// Just cut and paste this for now
public int describeContents() {
return 0;
}
}
我们能看看航海日志吗?我给你看。它得到打印的accountitems 35,然后得到打印的hee..然后在这里打印2。。但在此之后,数组列表ques=extras.getParcelableArrayListauthoritems;System.out.printlnhere+ques.size;它不会被打印出来。它在getparcelablearraylistok上崩溃,但崩溃的原因是什么?Parcelable协议要求在com.netvariant.zain.model.Question类上有一个名为Creator的Parcelable.Creator对象,我很高兴能帮助您。
import android.os.Parcel;
import android.os.Parcelable;
public class Question implements Parcelable {
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getSubTitle() {
return subTitle;
}
public void setSubTitle(String subTitle) {
this.subTitle = subTitle;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getLatitude() {
return latitude;
}
public void setLatitude(String latitude) {
this.latitude = latitude;
}
public String getLongitude() {
return longitude;
}
public void setLongitude(String longitude) {
this.longitude = longitude;
}
String title="";
String subTitle="";
String id="";
String url="";
String latitude="";
String longitude="";
public Question(String title, String subTitle, String id, String url, String latitude, String longitude) {
this.title = title;
this.subTitle = subTitle;
this.id = id;
this.url = url;
this.latitude = latitude;
this.longitude = longitude;
}
// Your existing methods go here. (There is no need for me to re-write them.)
// The following methods that are required for using Parcelable
private Question(Parcel in) {
// This order must match the order in writeToParcel()
title = in.readString();
subTitle = in.readString();
id = in.readString();
url = in.readString();
latitude = in.readString();
longitude = in.readString();
// Continue doing this for the rest of your member data
}
public void writeToParcel(Parcel out, int flags) {
// Again this order must match the Question(Parcel) constructor
out.writeString(title);
out.writeString(subTitle);
out.writeString(id);
out.writeString(url);
out.writeString(latitude);
out.writeString(longitude);
// Again continue doing this for the rest of your member data
}
// Just cut and paste this for now
public int describeContents() {
return 0;
}
}
public static final Parcelable.Creator<Question> CREATOR = new Parcelable.Creator<Question>() {
public Question createFromParcel(Parcel in) {
///
}
public Question[] newArray(int size) {
///
}
};