[英]How to send array of Hashmap from one activity to another activity in android
[英]passing a HashMap from one activity to another, android
我正在編寫一個Android應用程序來顯示附近的位置。 然后我存儲在這樣的hashmap列表中
List<HashMap<String, String>> places = null;
在第一個活動中,我在地圖上顯示了位置,我想將它們傳遞給另一個活動,然后列在listView中。
在第一個活動中,我有一個按鈕,可以將我引導到列表活動,如下所示:
public void list_airports(View v)
{
Intent intent;
switch (v.getId()) {
case R.id.list_items:
intent = new Intent(getApplicationContext(), List_airports.class);
intent.putExtra("places",places);
startActivity(intent);
break;
}
}
在下一個活動中我做了這個:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list_airports);
Bundle extras = getIntent().getExtras();
String[] places=extras.getStringArray(Intent.EXTRA_TEXT);
但方法putExtra不接受List<HashMap<String, String>>
使用intent.putExtra(String,Serializable)-請參閱http://developer.android.com/reference/android/content/Intent.html#putExtra%28java.lang.String,%20java.io.Serializable%29 。 即
intent.putExtra("placesHashMap", places)
在接收活動中使用
HashMap<String, String> places = (HashMap<String, String>) intent.getSerializableExtra("placesHashMap");
使用putExtra(String, Serializable)
在Intent中傳遞它,並使用getSerializableExtra(String)
方法來檢索它。
另外,使用ArrayList
而不是List
什么是Serializable
可序列化的當前課程截圖
1.將意圖從上下文類傳遞給新類
HashMap<String, String> hashMap= adapter.getItem(position); Intent intent = new Intent(OneActivity.this, SecondActivity.class); intent.putExtra("key", value); startActivity(intent);
2.將哈希映射傳遞給其他類
Bundle b=getIntent.getExtra();
if(b!=null)
{
yourhasmaplist=b.getSerializableExtra("key");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.