在我的应用程序的活动中,我有一个意图来开始一个新的活动,并且我想传递一个ArrayList,即每个对象都是自己类的实例的ArrayList ...我该怎么做?
我一直在看可能的getExtras(),如getStringArrayList()或getParcelableArrayList(),但它不起作用,我没有找到任何有效的类型。
谁能帮我?谢谢。
这是我的课:
public class ItemFile {
protected long id;
protected String nombre;
protected String rutaImagen;
protected boolean checked;
public ItemFile(long id, String nombre, String rutaImagen, boolean check) {
this.id = id;
this.nombre = nombre;
this.rutaImagen = rutaImagen;
this.checked = check;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getRutaImagen() {
return rutaImagen;
}
public void setRutaImagen(String rutaImagen) {
this.rutaImagen = rutaImagen;
}
public boolean isChecked() {
return checked;
}
public void setChecked(boolean checked){
this.checked = checked;
}
}
我必须如何更改以设置“可打包”?
最佳答案
首先确保MyClass类实现了Parcelable接口,然后使用此代码在其他Activity中获取ArrayList:
在您的第一个活动中,请执行以下操作:
ArrayList<MyClass> myClassList= new ArrayList<MyClass>();
Intent intent = new Intent(<YOUR ACTIVITY CONTEX>, <NEXT ACTIVITY>);
intent.putExtra("myClassList", myClassList);
startActivity(intent);
在您的下一个活动中,执行以下操作:
ArrayList<MyClass> list = (ArrayList<MyClass>)getIntent().getExtras()getSerializable("myClassList");
关于android - 使用getIntent()。getExtras()获得ArrayList <MyClass>,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26779571/