如何在Android中存储和检索Array-list值?

时间:2012-08-18 11:34:59

标签: android arraylist bundle

在Android中,使用Bundle存储和检索Array-list值,但我无法检索此数组列表值,请帮帮我

先谢谢

我试过了:

ArrayList<String> al = new ArrayList<String>();                                     
al.add(""+StrValue);                                                                                                                                                                                                                                  
Bundle value= new Bundle();                                                            
value.putStringArrayList("temp1", al);


 ArrayList<String> al = new ArrayList<String>();
 Bundle bundle =new Bundle();
 System.out.println("Retrieve Values are: "+bundle.getStringArrayList("temp1"));

Finally i got the result is Retrieve Values are (null)

2 个答案:

答案 0 :(得分:1)

Intent i = new Intent(this,name.class);
i.putStringArrayListExtra("stringname", value);
startActivity(i);

将数据导入Tabbar活动,如

Bundle extras = getIntent().getExtras();
    if (extras != null) {
        ArrayList<String> value = extras.getStringArrayList("stringname");
        Log.e(" array list value ", "" + value.size());
    }

标签栏设置意图

TabHost.TabSpec spec;
spec = tabHost.newTabSpec("text");
Intent intent = new Intent(this, TargetActivity.class); 
intent.putStringArrayListExtra("string", value);
spec.setContent(intent);
tabHost.addTab(spec);

将数据输入TargetActivity,例如

Bundle extras = getIntent().getExtras();
    if (extras != null) {
        ArrayList<String> value = extras.getStringArrayList("string");
        Log.e(" array list value ", "" + value.size());
    }

答案 1 :(得分:0)

您正在初始化一个新的Bundle。您应该使用已存储的同一个包。

 Bundle bundle =new Bundle();

取而代之的是

 Bundle bundle  = value;