猿问

在活动之间传递对象的arraylist

在活动之间传递对象的arraylist

我试图在两个活动之间传递一个对象的arraylist,但我的应用程序在第二个活动时崩溃。有人可以帮我解决这个问题......

这是我第一次活动的代码:

Intent i = new Intent();Bundle b = new Bundle();b.putParcelableArrayList("songs",(ArrayList<? extends Parcelable>) albumsArray.get(position).getSongs());Log.v("--", "OK");i.putExtras(b);i.setClass(LatestAlbums.this, AlbumDetails.class);startActivity(i);

和第二个活动的代码:

songs=new ArrayList<Songs>();Bundle b = this.getIntent().getExtras();if(b!=null)
    songs = b.getParcelable("songs");Log.v("--", songs.size()+"");


梵蒂冈之花
浏览 500回答 3
3回答

慕虎7371278

你应该让你的Song类实现Parcelable。

开满天机

你试试下面的intent.putParcelableArrayListExtra("key",&nbsp;ArrayList<T&nbsp;extends&nbsp;Parcelable>&nbsp;list);startActivity(intent);检索它getIntent().getParcelableArrayListExtra("key");

三国纷争

Intent&nbsp;intent=new&nbsp;Intent(ActivityFrom.this,ActivityTo.class);intent.putExtra("StringKey",arrayList);startActivity(intent);并检索ArrayList<String>&nbsp;myList&nbsp;=&nbsp;(ArrayList<String>)&nbsp;getIntent().getSerializableExtra("StringKey");
随时随地看视频慕课网APP

相关分类

Android
我要回答