Android在Intent </object>中传递ArrayList <object>

时间:2014-11-03 09:26:22

标签: java android android-intent parcelable serializable

我知道有两种方法可以做到这一点,Parcelable和Serializable。另一种方法(坏方法)是静态变量。

该列表的条目可以是A类或B类的实例。

我尝试使用Parcelable和Serializable传递列表没有成功,因为类Object没有实现任何东西。

// When setting:

List<Object> liveMatchList = DataCenter.getMatchesByDate(context, date,
                    tIdsAsString, true);
intent.putExtra("SER", liveMatchList);

// When getting:

List<Object> matchesList = (List<Object>)intent.getSerializableExtra("SER");

请问怎么做?

2 个答案:

答案 0 :(得分:0)

尝试使用以下代码:

Intent intent = new Intent(context,DESTINATION ACTIVITY.class);
intent.putExtra("data",YOUR ARRAY OF OBJECT)
startActivity(intent);

//在另一项活动中获取数据

ARRAY OF OBJECT = (ArrayList<String>) this.getIntent().getSerializableExtra("data"); 

//在这里我用Arraylist来解释你。

答案 1 :(得分:0)

Intent i = getIntent();  
stock_list = i.getStringArrayListExtra("stock_list");
and 
stock_list = getIntent().getStringArrayListExtra("stock_list");

Passing ArrayList through Intent