Intent默认没有提供一个方法直接去传递一个对象,但是可以将对象序列化后便可。Intent中的putExtra方法就可以传递一个Serializable 类型的数据,所以只需要这个类实现Serializable 接口即可。
putExtra(String name, Serializable value)
List<Map<String,Object>> data = new ArrayList<>();
for (Map<String,Object> dataMap : dataList) { data.add(dataMap); ... }
intent.putExtra("dataList", (Serializable)data);//对象靠intent带过去
Serializable serializable = getIntent().getSerializableExtra("dataList");//在另一个activity中用于获取对象
if(serializable != null) { dataList.addAll((List<Map<String,Object>>)serializable);//之后将serializable对象强转使用即可 }
在接收数据时利用intent中对应的Serializable getSerializableExtra(String name)方法即可。