如何使用putStringArrayListExtra()传递ArrayList

Miy*_*iya 12 java android arraylist

嗨,我想Arraylist从一个传递activity到另一个.我使用putStringArrayListExtra(),但显示错误:"The method putStringArrayListExtra(String,ArrayList is undefined for the type bundle."是否有其他方法可用于传递ArrayList

String test[]=new String[3]; 
ArrayList<String[]> al=new ArrayList<String[]>();  
int x,y;
test[0]="1";  
test[1]="2";  
test[2]="3";  
al.add(test);  

test = new String[3]; 
test[0]="4";  
test[1]="5";  
test[2]="6";  
al.add(test);  

Bundle list_bundle=new Bundle(); 
list_bundle.putStringArrayListExtra("lists",al); 
Intent list_intent= new Intent(v.getContext(), view_all_selected.class); 
list_intent.putExtras(list_bundle); 
startActivityForResult(list_intent, 2); 
Run Code Online (Sandbox Code Playgroud)

Man*_*esh 13

尝试下面的一个将1-D数组传递给附加组件中的Arraylist

ArrayList<String> al = new ArrayList<String>();
String arr[] = {"Zero", "One", "Two"}; 
//Convert string array to a collection 
Collection l = Arrays.asList(arr);
al.addAll(l); 
i.putStringArrayListExtra("ar", al);
Run Code Online (Sandbox Code Playgroud)


use*_*186 13

试试这个对我有用

第一项活动

ArrayList<String> ar=new ArrayList<String>();
ar.add("Apple");
ar.add("Banana");

Intent i=new Intent(this,Route.class);
i.putStringArrayListExtra("list", ar);
startActivity(i);
Run Code Online (Sandbox Code Playgroud)

第二项活动

ArrayList<String> ar1=getIntent().getExtras().getStringArrayList("list");   
Run Code Online (Sandbox Code Playgroud)