我正在尝试在我的应用程序中的多个活动之间传递一个对象的ArrayList。是否可以使用setData()方法使用Intent执行此操作?
答案 0 :(得分:11)
如果要发送对象的ArrayList,那么您的类必须实现Parcelable或Serializable接口。
请参阅这些在活动之间发送自定义对象的好教程
http://androidideasblog.blogspot.in/2010/02/passing-list-of-objects-between.html
答案 1 :(得分:3)
使用以下代码在意图中传递arraylist。
Intent mIntent = new Intent(FirstActivity.this, SecondActivity.class);
mIntent.putParcelableArrayListExtra("Data", mArraylist);
startActivity(mIntent);
使用以下代码从Intent获取arraylist。
Bundle bdl = getIntent().getExtras();
mArraylist1 = bdl.getParcelableArrayList("Data");
答案 2 :(得分:2)
首先,您需要在Object类中扩展parcelable类。然后你可以通过intent.putParcelableArrayListExtra("PASSING_DATA", data);
这里的数据是自定义对象的arraylist。
请参阅Parcelable和Parcelable Tutorial以获得更好的承诺
答案 3 :(得分:0)
答案 4 :(得分:0)
如果对象实现了Parcelable,你可以像这样使用putParcelableArrayList方法:
Bundle data = new Bundle();
data.putParcelableArrayList("myArrayList", myList);
Intent i = new Intent();
i.putExtra("data", data);
希望有所帮助。
答案 5 :(得分:0)
您可以将arraylist设置为静态,并将该位置传递给下一个活动