如何使用意图发送哈希值到另一个活动
如何将HashMap
值从一个Intent发送到第二个Intent?
另外,如何检索第二个Activity中的HashMap
值?
Java的HashMap类扩展了Serializable
接口,使用Intent.putExtra(String, Serializable)
方法可以很容易地将其添加到intent中。
在接收意图的活动/服务/广播接收Intent.getSerializableExtra(String)
,您随后使用您使用putExtra的名称调用Intent.getSerializableExtra(String)
。
例如,发送意图时:
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);
然后在接收活动中:
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")); }