Cómo pasar ArrayList <CustomeObject> de una actividad a otra?
Quiero enviar Siguiente ArrayList de una actividad a otra por favor ayuda.
ContactBean m_objUserDetails = new ContactBean(); ArrayList<ContactBean> ContactLis = new ArrayList<ContactBean>();
Estoy enviando el arraylist anterior después de agregar datos en él como sigue
- ¿Cómo poner un runnable en paquete?
- ArrayList no se puede convertir en clase personalizada extendiendo ArrayList
- Casting objetos a subclases de una superclase Parcelable?
- Cómo detener ProGuard de eliminar la interfaz Serializable de una clase
- ¿Está utilizando Serializable en Android mal?
Intent i = new Intent(this,DisplayContact.class); i.putExtra("Contact_list", ContactLis); startActivity(i);
Pero estoy recibiendo problemas mientras lo recupero.
ArrayList<ContactBean> l1 = new ArrayList<ContactBean>(); Bundle wrapedReceivedList = getIntent().getExtras(); l1= wrapedReceivedList.getCharSequenceArrayList("Contact_list");
En este punto estoy recibiendo este error:
Type mismatch: cannot convert from ArrayList<CharSequence> to ArrayList<ContactBean>
Mi clase ContactBean implementa Serializable por favor también decir por qué tenemos que implementar interfaz serializable.
- ¿Puedo enviar objetos personalizados a Android Wear?
- Android ArrayList de objetos personalizados - Guardar en SharedPreferences - Serializable?
- Cómo pasar un socket Bluetooth a otra actividad mediante la interfaz de la aplicación
- Persistencia de un objeto Parcelable en Android
- Android: problema con objeto Serializable puesto en intención
- Android: guarda datos parcelables en un archivo
- Pasar argumento entre Actividades - nulo
- Fragmento se bloquea con el paquete: no se puede marshal error de valor cuando onPause método se llama
Puede pasar un ArrayList<E>
la misma manera, si el tipo E
es Serializable
.
Usted llamaría a putExtra (String name, Serializable value)
de Intent
to store, y getSerializableExtra (String name)
para su recuperación.
Ejemplo:
ArrayList<String> myList = new ArrayList<String>(); intent.putExtra("mylist", myList);
En la otra Actividad:
ArrayList<String> myList = (ArrayList<String>) getIntent().getSerializableExtra("mylist");
En la primera actividad ..
ArrayList<ContactBean> fileList = new ArrayList<ContactBean>(); Intent intent = new Intent(MainActivity.this, secondActivity.class); intent.putExtra("FILES_TO_SEND", fileList); startActivity(intent);
En la actividad del receptor:
ArrayList<ContactBean> filelist = (ArrayList<ContactBean>)getIntent().getSerializableExtra("FILES_TO_SEND");`
Usted necesita implementos Parcelable en su clase de ContactBean
, pongo un ejemplo para usted:
public class ContactClass implements Parcelable { private String id; private String photo; private String firstname; private String lastname; public ContactClass() { } private ContactClass(Parcel in) { firstname = in.readString(); lastname = in.readString(); photo = in.readString(); id = in.readString(); } @Override public int describeContents() { // TODO Auto-generated method stub return 0; } @Override public void writeToParcel(Parcel dest, int flags) { dest.writeString(firstname); dest.writeString(lastname); dest.writeString(photo); dest.writeString(id); } public static final Parcelable.Creator<ContactClass> CREATOR = new Parcelable.Creator<ContactClass>() { public ContactClass createFromParcel(Parcel in) { return new ContactClass(in); } public ContactClass[] newArray(int size) { return new ContactClass[size]; } }; // all get , set method }
Y esto obtener y establecer para su código:
Intent intent = new Intent(this,DisplayContact.class); intent.putExtra("Contact_list", ContactLis); startActivity(intent);
segunda clase:
ArrayList<ContactClass> myList = getIntent().getParcelableExtra("Contact_list");
Utilice este código para pasar a otra actividad.
En primer lugar serializar nuestro frijol de contacto
public class ContactBean implements Serializable { //do intialization here }
Ahora pase su arraylist ..
Intent intent = new Intent(this,name of activity.class); contactBean=(ConactBean)_arraylist.get(position); intent.putExtra("contactBeanObj",conactBean); _activity.startActivity(intent);
- Cómo manejar las cookies en httpUrlConnection usando cookieManager
- Android hierarchyviewer no puede cargar datos de ventana