Passing ArrayList Between multiple Activities

前端 未结 6 849
暖寄归人
暖寄归人 2020-12-10 06:11

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?

相关标签:
6条回答
  • 2020-12-10 06:30

    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

    0 讨论(0)
  • 2020-12-10 06:33

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

    0 讨论(0)
  • 2020-12-10 06:35

    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.

    0 讨论(0)
  • 2020-12-10 06:39

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

    0 讨论(0)
  • 2020-12-10 06:40

    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");
    
    0 讨论(0)
  • 2020-12-10 06:51

    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

    0 讨论(0)
提交回复
热议问题