Parcel: unable to marshal value {CLASSNAME}

1058 ワード

2つのactivity直接値を渡すにはlistを渡す必要があります.
i.putExtra(name, list);いいですが、いくつか注意しなければなりません.
1、Beanはimplements SerializableまたはParcelableを継承する.ここで挙げた例は前者である.
2、リスト自体はArrayListとして指定する
3、伝達値のactivity端i.putExtra(「aaa」、Arraylistインスタンス);
4、受付セグメントactivity端(ArrayList)getIntent()getSerializableExtra("aaa");
beanにクラスが1つもない場合は、各クラスはimplements SerializableまたはParcelableを継承します.
こんな感じ(指の下)
public class PersonDetailInfo implements Serializable{
	
	public Friends fdata;
	public Guide gdata;
	 
	
	public static class Friends implements Serializable{
		public List list;
	}
   public static class PersonDetail implements Serializable{
	   
	   public String id;
	   public String name;
	   public String phonenumber;
	
    }
   public static class Guide implements Serializable{
	   public List list;
   }
   public static class GuideDetail implements Serializable{
	   
	   public String id;
	   public String guidename;
	   public String gphonenumber;
	   
   }
}