Foros del Web » Programando para Internet » Android »

parametros entre intent con parcelable

Estas en el tema de parametros entre intent con parcelable en el foro de Android en Foros del Web. Buenas tengo un pequeño problema que os quisiera consultar, a ver si alguien me sabría decir cómo solucionarlo. El caso es que quiero pasar una ...
  #1 (permalink)  
Antiguo 02/07/2013, 09:43
 
Fecha de Ingreso: octubre-2012
Ubicación: Madrid
Mensajes: 67
Antigüedad: 12 años, 1 mes
Puntos: 1
parametros entre intent con parcelable

Buenas

tengo un pequeño problema que os quisiera consultar, a ver si alguien me sabría decir cómo solucionarlo. El caso es que quiero pasar una clase entre un fagmentActivity y otro. Para esto, la clase que quiero pasar tendría que implementar la clase Parcelable, hasta ahí bien. El problema es que dentro de la clase que quiero pasar, hay un parámetro que es otra clase, entonces, esta clase cómo la puedo pasar??

pongo aquí el código a ver si queda algo más claro:

Esta es la clase que quiero pasar Album:

Código:
package es.intereconomia.utils;

import java.util.ArrayList;

import android.os.Parcel;
import android.os.Parcelable;

public class Album implements Parcelable{

	protected String descripcion;
	protected String imgMiniatura;
	protected String imaprin;
	protected String fecha;
	protected ArrayList<ImagenAlbum> imagenes;

	public Album() {
		this.descripcion = "";
		this.imgMiniatura = "";
		this.imaprin = "";
		this.fecha = "";
		this.imagenes = new ArrayList<ImagenAlbum>();
	}

	public Album(String descripcion, String imgMiniatura, String imaprin,
			String fecha, ArrayList<ImagenAlbum> imagen) {
		this.descripcion = descripcion;
		this.imgMiniatura = imgMiniatura;
		this.imaprin = imaprin;
		this.fecha = fecha;
		this.imagenes = imagen;
	}

	public String getDescripcion() {
		return descripcion;
	}

	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}

	public String getImgMiniatura() {
		return imgMiniatura;
	}

	public void setImgMiniatura(String imgMiniatura) {
		this.imgMiniatura = imgMiniatura;
	}

	public String getImaprin() {
		return imaprin;
	}

	public void setImaprin(String imaprin) {
		this.imaprin = imaprin;
	}

	public String getFecha() {
		return fecha;
	}

	public void setFecha(String fecha) {
		this.fecha = fecha;
	}

	public ArrayList<ImagenAlbum> getImagenes() {
		return imagenes;
	}

	public void setImagenes(ArrayList<ImagenAlbum> imagen) {
		this.imagenes = imagen;
	}

	@Override
	public int describeContents() {
		// TODO Auto-generated method stub
		return 0;
	}
	
	@Override
	public void writeToParcel(Parcel dest, int flags) {
		dest.writeString(getDescripcion());
		dest.writeString(getImgMiniatura());
		dest.writeString(getImaprin());
		dest.writeString(getFecha());
		dest.writeTypedList(getImagenes());  //ESTO ES LO QUE NO SÉ!!!!
	}
	
	public void readToParcel(Parcel parcel){
		setDescripcion(parcel.readString());
		setImgMiniatura(parcel.readString());
		setImaprin(parcel.readString());
		setFecha(parcel.readString());
		setImagenes(parcel.readTypedList(imagenes, null)); //ESTO ES LO QUE NO SÉ!!!!
		
	}
	
}
Y esta es la clase ImagenAlbum (el parámetro imagenes de la clase Album es un array de esta clase)

Código:
package es.intereconomia.utils;

import android.os.Parcel;
import android.os.Parcelable;

public class ImagenAlbum implements Parcelable{

	protected String imgMiniatura;
	protected String imagentablet;
	protected String imagenmovil;
	protected String pie;
	
	public ImagenAlbum() {
		this.imgMiniatura = "";
		this.imagentablet = "";
		this.imagenmovil = "";
		this.pie = "";
	}

	public ImagenAlbum(String imgMiniatura, String imagentablet, String imagenmovil,
			String pie) {
		this.imgMiniatura = imgMiniatura;
		this.imagentablet = imagentablet;
		this.imagenmovil = imagenmovil;
		this.pie = pie;
	}

	public String getImgMiniatura() {
		return imgMiniatura;
	}

	public void setImgMiniatura(String imgMiniatura) {
		this.imgMiniatura = imgMiniatura;
	}

	public String getImagentablet() {
		return imagentablet;
	}

	public void setImagentablet(String imagentablet) {
		this.imagentablet = imagentablet;
	}

	public String getImagenmovil() {
		return imagenmovil;
	}

	public void setImagenmovil(String imagenmovil) {
		this.imagenmovil = imagenmovil;
	}

	public String getPie() {
		return pie;
	}

	public void setPie(String pie) {
		this.pie = pie;
	}

	@Override
	public int describeContents() {
		// TODO Auto-generated method stub
		return 0;
	}
	
	@Override
	public void writeToParcel(Parcel dest, int flags) {
		dest.writeString(getImgMiniatura());
		dest.writeString(getImagentablet());
		dest.writeString(getImagenmovil());
		dest.writeString(getPie());
	}
	
	public void readToParcel(Parcel parcel){
		setImgMiniatura(parcel.readString());
		setImagentablet(parcel.readString());
		setImagenmovil(parcel.readString());
		setPie(parcel.readString());
	}
}
Alguien me puede ayudar??

Grcias

Etiquetas: activity, java, parametros, todo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:41.