博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android传递数据bundle封装传递map对象
阅读量:6720 次
发布时间:2019-06-25

本文共 894 字,大约阅读时间需要 2 分钟。

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.
 
*/
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;
    
}
}

第二步:传递数据:

 

1
2
3
4
5
6
7
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);

第三步:接收数据:

 

1
2
Bundle bundle = getIntent().getExtras();
        
SerializableMap serializableMap = (SerializableMap) bundle.get(
"map"
);

 

 

到此数据就能在通过map传递和使用了。

转载于:https://www.cnblogs.com/mochaMM/p/5122148.html

你可能感兴趣的文章
postgresql----INSERT
查看>>
MVC中渲染页面
查看>>
Java OA的优势何在
查看>>
SSH配置启动后Could not instantiate bean class [org.hibernate.cfg.AnnotationConfiguration
查看>>
delphi中AnsiString、WideString区别
查看>>
objective-c系列-NSMutableString
查看>>
保存在云端的数据可以真正销毁掉吗?
查看>>
code jam训练
查看>>
ScrollGridView 标题不变化 内容变化
查看>>
百炼骑车与走路
查看>>
SQL2008将服务器的数据库表数据插入到本地数据库
查看>>
css知多少(6)——选择器的优先级(转)
查看>>
.NET的Session详解[转]
查看>>
Rxjava Subjects
查看>>
Javascript中数组的使用
查看>>
在rehhat5.5下安装oracle11g 图形安装及执行脚本
查看>>
《Ext JS权威指南》节选:树的动态加载及节点维护
查看>>
zend studio
查看>>
网站备案流程
查看>>
mysql 将行拼接成字符串的方法
查看>>