如何解决如何将ArrayList <HashMap <String,String >>从一个活动传递到另一个活动
|| 我如何将数组列表从一个活动传递到另一个数组列表,如下所示ArrayList<HashMap<String,String>>
解决方法
使用
putExtra(String,Serializable)
通过Intent传递值,并使用getSerializableExtra(String)
方法检索数据。
从活动A向活动B传递ArrayList<HashMap<String,String>>
Intent intent = new Intent(this,B.class);
HashMap<String,String> hm = new HashMap<String,String>();
hm.put(\"sunil\",\"sahoo\");
ArrayList<HashMap<String,String>> arl = new ArrayList<HashMap<String,String>>();
arl.add(hm);
intent.putExtra(\"arraylist\",arl);
startActivityForResult(intent,500);
检索活动B中的数据
ArrayList<HashMap<String,String>> arl = (ArrayList<HashMap<String,String>>) getIntent().getSerializableExtra(\"arraylist\");
System.out.println(\"...serialized data..\"+arl);
, 您可以使用捆绑包将元素从一个活动传递到另一个活动。
检查一下:http://developer.android.com/reference/android/os/Bundle.html
创建捆绑包,将其放入Intent,然后在新活动上,将其获取并提取所需的元素。
它是这样的:
Bundle b = new Bundle();
String s = \"hello\";
b.putString(\"example\",s);
intent.putExtras(b);
然后在新活动上:
Bundle b = this.getIntent().getExtras();
String s = b.getString(\"example\");
, 这是另一种技术
我使用以下行在firstClass中定义ArrayList。
static ArrayList al=new ArrayList();
在第二个活动中,我使用以下行从firstClass获取ArrayList的数据,
firstClass.al.size();
, 我的想法是,您可以在包装上为此数据集定义一个全局静态变量,并先保存它,然后再跳转到另一个活动。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。