我需要将ArrayList<String>
发送到另一个Activity,因此我创建了这个实现Parcelable
的Activity。
public class ParceDataImages implements Parcelable {
private ArrayList<String> Images;
public ParceDataImages(ArrayList<String> images) {
this.Images = images;
}
public ParceDataImages(Parcel parcel) {
this.Images = new ArrayList<String>();
parcel.readList(this.Images,String.class.getClassLoader());
}
public ArrayList<String> getImages() {
return Images;
}
public void setImages(ArrayList<String> images) {
Images = images;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeList(Images);
}
public static final Parcelable.Creator<ParceDataImages> CREATOR = new ClassLoaderCreator<ParceDataImages>() {
@Override
public ParceDataImages createFromParcel(Parcel source, ClassLoader loader) {
return null;
}
@Override
public ParceDataImages createFromParcel(Parcel source) {
return new ParceDataImages(source);
}
@Override
public ParceDataImages[] newArray(int size) {
return new ParceDataImages[size];
}
};
在我的适配器内部:
public void onClick(View view) {
ParceDataImages parceDataImages = new ParceDataImages(ImageArray);
Intent intent = new Intent(activity,UserAdsView.class);
intent.putExtra("data",parceDataImages);
activity.startActivity(intent);
SecondActivity:
ParceDataImages parce = getIntent().getExtras().getParcelable("data");
我得到了这个例外:java.lang.RuntimeException: Failure from system