java Android:如何实现可打包到我的对象?
我有一个ConstantData类,它保存着我的JSON索引,我需要在活动之间用额外的东西传递它们。但在此之前,我必须首先实现这个类的对象的Parcelable
我的问题是,我应该如何在我的类中声明对象,并将每个对象放入一个变量中
我是个新手,现在完全不知所措。非常感谢。请随意修改我下面的代码
康斯坦达。java
public class ConstantData{
public static String project_title = "project title";
public static String organization_title = "organization title";
public static String keyword = "keyword";
public static String short_code = "short code";
public static String project_description = "description";
public static String smallImageUrl = "smallImageUrl";
public static String bigImageUrl = "bigImageUrl";
public static String price= "price";
public static String country= "country";
public static ArrayList<Project> projectsList = new ArrayList<Project>();
public int describeContents() {
return 0;
}
public void writeToParcel(Parcel out, int flags) {
out.writeString(project_title);
out.writeString(organization_title);
out.writeString(keyword);
out.writeString(short_code);
out.writeString(project_description);
out.writeString(smallImageUrl);
out.writeString(bigImageUrl);
out.writeString(price);
out.writeString(country);
}
public static final Parcelable.Creator<ConstantData> CREATOR
= new Parcelable.Creator<ConstantData>() {
public ConstantData createFromParcel(Parcel in) {
return new ConstantData(in);
}
public ConstantData[] newArray(int size) {
return new ConstantData[size];
}
};
private ConstantData(Parcel in) {
project_title = in.readString();
organization_title = in.readString();
keyword = in.readString();
short_code = in.readString();
project_description = in.readString();
smallImageUrl = in.readString();
bigImageUrl = in.readString();
price = in.readString();
country = in.readString();
}
}
如果我的问题不够清楚,你可以查这个问题:How to send an object from one Android Activity to another using Intents?
他在那里写道myParcelableObject
,我只是不知道如何制作可包裹的物体
编辑 项目。java
public class Project {
public String project_title;
public String organization_title;
public String keyword;
public String short_code;
public String project_description;
public String smallImageUrl;
public String bigImageUrl;
public String price;
public String country;
}
# 1 楼答案
您需要实现
Parcelable
接口我认为
projectsList
的编写要起作用,Project
类还需要实现Parcelable
例如,参见this class