(需要代码直接跳到代码上去。前面是博主吹b的段子)
一般的数据。int或者string之类的直接用intent.put()就可以做到。然后遇到了list集合的问题。有点搞不懂。买的书上倒是有提及一点。就是说Serializable(序列化)。其实不太懂这个的意思。但是他要求你传递的list集合是序列化的。然后去查看了序列化什么意思。有一个回答说是这只是一个接口。并没有实际的内容。要你实现这样的接口事实上是为了标示这个list是序列化后的。于是想着能不能去自己写一个类实现list和Serializable。但是对list不熟悉写不来各种方法。于是又苦情的去到处找。终于是。在看来些许博文之后发现了一个可行的方法。
Intent myintent = new Intent(Food_item.this, Dingcan.class);
myintent.putExtra("mylistdata", (Serializable) list);
startActivity(myintent);
这个是在原activity中的发送数据。其实就是将list“序列化”。
Intent myintent = getIntent();
this.list = (List<Map<String, Object>>) myintent
.getSerializableExtra("mylistdata");
接收数据要注意使用的get方法。是getserializableextra。然后要将这个list转换成你的list的类型。
如此一来。大功告成了。