java - 如何在 bundle 中传递 list<>

标签 java android android-intent arraylist bundle

我有以下代码:

List<ValueActivity> list = new ArrayList<ValueActivity>();    
list = setList();    
Intent intent = new Intent(NOTIFICATION);    
Bundle bundle = new Bundle();
bundle.put ????("list", list);
intent.putExtra("bundle", bundle);
sendBroadcast(intent);

第5行怎么写以及destination intent中getExtra怎么写

最佳答案

您需要让 ValueActivity 实现 Parcelable 接口(interface),并且您需要实现 writeToParcel() CREATOR 和一个以 Parcel 作为参数的合适的构造函数。参见Parcelable接口(interface)的文档。

要将列表放入 Bundle,请使用:

bundle.putParcelableArrayList("list", list);

要从目标 Activity 中的 Bundle 中获取列表,请使用:

List<ValueActivity> = listbundle.getParcelableArrayList("list");

关于java - 如何在 bundle 中传递 list<>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28190847/

相关文章:

java - 将 Tomcat 数据库设置迁移到 Websphere

java - 在android项目中放置并运行apk文件

java - 通用图像加载器太慢

android - 丢失旧 keystore ,需要使用新 keystore 对应用程序进行签名

android - 在 android 中使用 MediaStore.ACTION_IMAGE_CAPTURE Intent 捕获图像

android - 重定向用户以打开互联网设置

java - 横向模式下的Android多 fragment 布局

java - JTextPane 的轻量级替代品?

java - TagSupport 中的 ID

java - 如何在 Eclipse 代码模板中获取 Maven pom.xml 版本?