簡體   English   中英

無法將ArrayList <Parcelable>傳遞給活動

[英]Can't pass an ArrayList<Parcelable> to an activity

這是代碼

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

ReceiverActivity

List<MyObject> list = (List<MyObject>)getIntent().getExtras().getParcelable("list");

這里的列表為空。 這也行不通:

List<MyObject> list = (List<MyObject>)getIntent().getExtras().getSerializable("list");

MyObject是Parcelable,我實現了所有必需的方法。 我想這個實現不是問題,因為否則我會找到其他類型的例外。 但除了list之外我沒有得到任何東西。

提前致謝...

現在我發現了這個:

List<Parcelable> list = (List<Parcelable>)getIntent().getParcelableArrayListExtra("list");

必須在接收器活動中使用,但如何發送它以及如何從List<Parcelable>獲取List<MyObject> List<Parcelable>

使用i.putParcelableArrayListExtra(name, value) ,其中i是你的意圖。 不要將putExtra()用於parcelable ArrayList。

嘗試:

ArrayList<MyObject> myList = extras.<MyObject>getParcelableArrayList("list"));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM