android开发默认情况下,通过Bundle bundle=new Bundle();传递值是不能直接传递map对象的,解决办法:
第一步:封装自己的map,实现序列化即可
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | /** * 序列化map供Bundle传递map使用 * Created  on 13-12-9. */publicclassSerializableMap implementsSerializable {    privateMap<String,Object> map;    publicMap<String, Object> getMap() {        returnmap;    }    publicvoidsetMap(Map<String, Object> map) {        this.map = map;    }} | 
第二步:传递数据:
| 1 2 3 4 5 6 7 | Intent intent=newIntent(ListViewActivity.this,UpdateWatchActivity.class);                                //传递数据                                final SerializableMap myMap=newSerializableMap();                                myMap.setMap(map);//将map数据添加到封装的myMap<span></span>中                                Bundle bundle=newBundle();                                bundle.putSerializable("map", myMap);                                intent.putExtras(bundle); | 
第三步:接收数据:
| 1 2 | Bundle bundle = getIntent().getExtras();        SerializableMap serializableMap = (SerializableMap) bundle.get("map"); | 
到此数据就能在通过map传递和使用了。