0

i have two activities named "Activity A" and "Activity B". In my Activity A i need to pass Arraylist<BeanClass> to Activity B. Here is Activity A code....

Arraylist<BeanClass> list;
list.add(new BeanClass(nm, Add, Phn));
Intent i = new Intent(Activity A.this,Activity B.class);

now how to pass list to next activity and receive it as well...

Here is a BeanClass.java

public class BeanClass 
{
    String name,address,phone;

    BeanClass(String name,String address,String phone)
    {

        this.name=name;
        this.address=address;
        this.phone=phone;
    }

}
KV Prajapati
  • 93,659
  • 19
  • 148
  • 186
Harsh Lakhani
  • 125
  • 1
  • 6

1 Answers1

4

You have to make BeanClass class to serializable.

public class BeanClass implements Serializable
{
  //fields
  //constructors
  //setter/getter 
}

Prepare the List and pass it via Intent.putExtra()

 Intent intent=new Intent(MainActivity.this, NextActivity.class);
 ArrayList<BeanClass> list=new ArrayList<BeanClass>();
 list.add(new BeanClass(nm, Add, Phn));
 ...

 intent.putExtra("list", list); 
 startActivity(intent);

And receive the List in NextActivity's onCreate method

 Intent intent=getIntent();
 ArrayList<BeanClass> list=(ArrayList<BeanClass>)intent.getSerializableExtra("list");
KV Prajapati
  • 93,659
  • 19
  • 148
  • 186