Passing ArrayList<MyObject> Between multiple Activities

半腔热情 提交于 2019-12-28 15:36:32

问题


I am trying to pass an ArrayList of Objects between multiple activities in my application. Is it possible to do this using an Intent using the setData() method?


回答1:


If you want to send an ArrayList of objects then your class must implement the Parcelable or Serializable interface .

See these good tutorials for sending custom object between Activities

http://androidideasblog.blogspot.in/2010/02/passing-list-of-objects-between.html

http://www.anddev.org/novice-tutorials-f8/simple-tutorial-passing-arraylist-across-activities-t9996.html




回答2:


Use below code for pass arraylist in intent.

Intent mIntent = new Intent(FirstActivity.this, SecondActivity.class);
mIntent.putParcelableArrayListExtra("Data", mArraylist);
startActivity(mIntent);

Use below code For get arraylist from Intent.

Bundle bdl = getIntent().getExtras();
mArraylist1 = bdl.getParcelableArrayList("Data");



回答3:


First you need to extend parcelable class in your Object class. Then you can pass it through intent via intent.putParcelableArrayListExtra("PASSING_DATA", data);

here data is arraylist of custom objects.

see Parcelable and Parcelable Tutorial for better undertanding




回答4:


If the objects implement Parcelable you can use the putParcelableArrayList method like this:

Bundle data = new Bundle();
data.putParcelableArrayList("myArrayList", myList);
Intent i = new Intent();
i.putExtra("data", data);

Hope that helps.




回答5:


yes, it is possible... You need to implement Serializable class by your object class.




回答6:


You can make the arraylist static where you are defining it, and only pass the position to the next activity



来源:https://stackoverflow.com/questions/13722040/passing-arraylistmyobject-between-multiple-activities

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!