无法将ArrayList <Parcelable>传递给活动

Ixx*_*Ixx 5 parameters android parcelable android-activity

这是代码

ArrayList<MyObject> list = new ArrayList<MyObject>();
list.add(new MyObject());
Intent intent = new Intent(this, ReceiverActivity.class);
intent.putExtra("list", list);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

ReceiverActivity

List<MyObject> list = (List<MyObject>)getIntent().getExtras().getParcelable("list");
Run Code Online (Sandbox Code Playgroud)

这里的列表为空.这也行不通:

List<MyObject> list = (List<MyObject>)getIntent().getExtras().getSerializable("list");
Run Code Online (Sandbox Code Playgroud)

MyObject是Parcelable,我实现了所有必需的方法.我想这个实现不是问题,因为否则我会找到其他类型的例外.但除了list之外我没有得到任何东西.

提前致谢...

现在我发现了这个:

List<Parcelable> list = (List<Parcelable>)getIntent().getParcelableArrayListExtra("list");
Run Code Online (Sandbox Code Playgroud)

已在接收活动中使用,但我怎么把它和我怎么List<MyObject>List<Parcelable>

Akh*_*hil 15

使用i.putParcelableArrayListExtra(name, value)我的意图.不要将putExtra()用于parcelable ArrayList.


Mar*_*Bar 6

尝试:

ArrayList<MyObject> myList = extras.<MyObject>getParcelableArrayList("list"));
Run Code Online (Sandbox Code Playgroud)