我有一个Bundle
数组,我将把它发送给另一个活动
发射器:
List<Bundle> items = new ArrayList<>();
// add items
Intent intent = new Intent(this, Dialog.class);
intent.putExtra("items", items.toArray());
startActivity(intent);
接收器:
Bundle[] items = (Bundle[]) getIntent().getExtras().getSerializable("items");
但是它的返回错误:
E/AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.myApp/com.example.myApp.items.ReceverActivity}: java.lang.ClassCastException: java.lang.Object[] cannot be cast to android.os.Bundle[]
答案 0 :(得分:3)
Bundle不是Serializable
,但确实实现了Parcelable
。您可以使用putParcelableArrayList传递ArrayList<Bundle>
和getParcelableArrayList来检索它。还有一对传递和检索数组,你必须使用数组