Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 未完全接收Arraylist元素_Java_Android_Arraylist - Fatal编程技术网

Java 未完全接收Arraylist元素

Java 未完全接收Arraylist元素,java,android,arraylist,Java,Android,Arraylist,我使用这段代码将arraylist中的数据从一个活动传输到另一个活动,并且我只有一项保存在列表顶部 代码如下所示: ArrayList<String> ap=new ArrayList<String>(); ArrayList<String> ad=new ArrayList<String>(); ArrayList<String> as=new ArrayList<String>();

我使用这段代码将arraylist中的数据从一个活动传输到另一个活动,并且我只有一项保存在列表顶部

代码如下所示:

ArrayList<String> ap=new ArrayList<String>();
        ArrayList<String> ad=new ArrayList<String>();
        ArrayList<String> as=new ArrayList<String>();

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            String place=add.getText().toString();
            String sta=states.getSelectedItem().toString();
            String dis=districts.getSelectedItem().toString();
                ap.add(place);
                as.add(sta);
                ad.add(dis);

            next=new Intent(AddPlace.this,MainActivity.class);
            next.putExtra("places", ap);

            next.putExtra("districts", ad);
            next.putExtra("states", as);
            startActivity(next);
ArrayList ap=new ArrayList();
ArrayList ad=新的ArrayList();
ArrayList as=新的ArrayList();
@凌驾
公共void onClick(视图v){
//TODO自动生成的方法存根
字符串位置=add.getText().toString();
字符串sta=states.getSelectedItem().toString();
String dis=districts.getSelectedItem().toString();
附件:增补(地方);;
添加(sta);
ad.add(dis);
next=新意图(AddPlace.this、MainActivity.class);
下一步。putExtra(“地点”,美联社);
下一步。putExtra(“地区”,广告);
下一步。putExtra(“状态”,as);
星触觉(next);
和此处添加的主要活动代码:

ArrayList <String>vp= (ArrayList<String>) getIntent().getExtras().getStringArrayList("places");
            Iterator i=vp.iterator();
            while(i.hasNext())
            {
                Toast.makeText(getBaseContext(), (CharSequence) i.next().toString(), Toast.LENGTH_LONG).show();
            }
ArrayList vp=(ArrayList)getIntent().getExtras().getStringArrayList(“位置”);
迭代器i=vp.Iterator();
while(i.hasNext())
{
Toast.makeText(getBaseContext(),(CharSequence)i.next().toString(),Toast.LENGTH_LONG.show();
}

请帮助我通过ArrayList投掷活动,您可以执行以下操作:

在您的第一次活动中

Intent intent = new Intent(this, SecondActivity.class);
intent.putStringArrayListExtra("Your_List", yourList);
startActivity(intent);
在第二次活动中

Intent intent = new Intent(this, SecondActivity.class);
intent.putStringArrayListExtra("Your_List", yourList);
startActivity(intent);
在接收意图中,您需要执行以下操作:

Intent i = getIntent();  
yourList = i.getStringArrayListExtra("Your_List");

您确定列表中有多个项吗?使用此项传递arraylist intent.putParcelableArrayListExtra(“键”,arraylist list);startActivity(intent);getIntent().getParcelableArrayListExtra(“键”);若要检索,您只要求查看
位置
列表,而您只在该列表中添加了一项。您是否了解,您有三个列表,每个列表中有一项,而不是一个列表中有三项?@chancea:是的。我插入了多个项目,并且仅检索另一个活动中最后插入的项目。