android传递数据bundle封装传递map对象
android开发默认情况下,通过Bundle bundle=new Bundle();传递值是不能直接传递map对象的,解决办法:
第一步:封装自己的map,实现序列化即可
/** * 序列化map供Bundle传递map使用 * Created on 13-12-9. */ public class SerializableMap implements Serializable { private Map<String,Object> map; public Map<String, Object> getMap() { return map; } public void setMap(Map<String, Object> map) { this.map = map; } }
第二步:传递数据:
Intent intent=new Intent(ListViewActivity.this,UpdateWatchActivity.class); //传递数据 final SerializableMap myMap=new SerializableMap(); myMap.setMap(map);//将map数据添加到封装的myMap<span></span>中 Bundle bundle=new Bundle(); bundle.putSerializable("map", myMap); intent.putExtras(bundle);
第三步:接收数据:
Bundle bundle = getIntent().getExtras();
SerializableMap serializableMap = (SerializableMap) bundle.get("map");
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。