Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.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_Parcelable - Fatal编程技术网

Java 从一个活动检索可包裹ArrayList到另一个活动

Java 从一个活动检索可包裹ArrayList到另一个活动,java,android,arraylist,parcelable,Java,Android,Arraylist,Parcelable,我在从一个活动检索ArrayList到另一个活动时遇到问题。我的视频类实现了Parcelable imageView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Bundle b = mVideos.get(numero).getAsBundle(); Bundle a = new Bundle();

我在从一个活动检索ArrayList到另一个活动时遇到问题。我的视频类实现了Parcelable

imageView.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Bundle b = mVideos.get(numero).getAsBundle();
        Bundle a = new Bundle();
        // putting the parcelable mVideos, which is an array, into the bundle.
        a.putParcelableArrayList("videos", mVideos);
        final Intent i = new Intent("com.video.tv.description");
        i.putExtra("com.video.tv.description", b);
        i.putExtra("com.video.tv.Videos", a); // I added it to intent
        dAct.startActivity(i);
    }
});
如何在第二个活动中检索整个数组

Bundle a = i.getBundleExtra("com.video.tv.Videos")?? 

我正试图像我最初的活动一样获取整个数组。

d您的代码非常奇怪,看起来您有很多不必要的包,在构建包时请尝试以下操作:

imageView.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // What is the purpose of this line?
        Bundle b = mVideos.get(numero).getAsBundle();
        Bundle a = new Bundle();
        a.putParcelableArrayList("videos", mVideos);
        // Replace YourNewActivity with the name of the Activity you want to start.
        Intent i = new Intent(dAct, YourNewActivity.class);
        i.putExtra("description", b);
        i.putExtra("videos", a); // I added it to intent
        dAct.startActivity(i);
    }
});
然后,在接收活动中,执行以下操作以获取列表:

Bundle i = getIntent().getExtras();
Bundle a = i.getBundleExtra("com.video.tv.Videos");
ArrayList<Video> videos = a.getParcelableArrayList("videos");
Bundle i=getIntent().getExtras();
Bundle a=i.getBundleExtra(“com.video.tv.Videos”);
ArrayList videos=a.getParcelableArrayList(“视频”);

putParcelableArrayList
getParcelableArrayList
起初我只需要一个bundle,但后来我意识到我还需要传入一个对象的arrayList。您建议如何修复它?您能为我澄清一下您在何处启动此意向吗?您是否正在进行活动?为什么要在此处添加侦听器?为什么不在使用适配器时将OnClickListener添加到适配器中呢?因为我试图实现horizontalListView,我的解决方法是添加HorizontalScrollView,然后调用HorizontalGalleryAdapter=new HorizontalGalleryAdapter(这是mVideos);对于(inti=0;i