android - 如何使用 Intent 将 HashMap 值发送到另一个 Activity

标签 android hashmap

如何将 HashMap 值从一个 Intent 发送到第二个 Intent?

另外,如何在第二个 Activity 中检索 HashMap 值?

最佳答案

Java 的 HashMap 类扩展了 Serializable 接口(interface),使用 Intent.putExtra(String, Serializable) 可以轻松地将其添加到 Intent 中。方法。

在接收到 Intent 的 Activity/服务/广播接收器中,然后调用 Intent.getSerializableExtra(String)使用您在 putExtra 中使用的名称。

例如发送intent时:

HashMap<String, String> hashMap = new HashMap<String, String>();
hashMap.put("key", "value");
Intent intent = new Intent(this, MyOtherActivity.class);
intent.putExtra("map", hashMap);
startActivity(intent);

然后在接收Activity中:

protected void onCreate(Bundle bundle) {
    super.onCreate(savedInstanceState);

    Intent intent = getIntent();
    HashMap<String, String> hashMap = (HashMap<String, String>)intent.getSerializableExtra("map");
    Log.v("HashMapTest", hashMap.get("key"));
}

关于android - 如何使用 Intent 将 HashMap 值发送到另一个 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7578236/

相关文章:

android - 在 Android Kotlin 中创建类扩展 AsyncTask 而不泄漏上下文对象

java - 在排序文件中使用二进制搜索超快速自动完成(300000 行)

java - 使用值对象内的日期对 HashMap 进行排序

java - 创建 HashMap 数组,同时指定 HashMap<String, Integer>

mysql - hibernate 不会在 mysql 中生成删除级联以映射 HashMap

java - HashMap.put 没有按预期工作

Android - TimePicker 分钟到 15

android - RxJava 2 去抖动 : how to ignore debounce when next observable has error

Android NavigationDrawer 与 PreferenceActivity

java - 如何为 private HashMap<String, HashSet<String>> hm; 编写 bytebuddy 代码?