2 回答

TA貢獻(xiàn)1776條經(jīng)驗(yàn) 獲得超12個(gè)贊
您可以將 Bundle 中的每個(gè)值分開(kāi),而不是在 Intent 中傳遞 HashMap。就像這樣:
Intent intent = new Intent(ViewStaffActivity.this,ProfileCRUD.class);
HashMap<String, String> hashMap = staffList.get(position);
Bundle extras = new Bundle();
extras.putString("NAME", hashmap.get("name"));
extras.putString("EMAIL", hashmap.get("email"));
extras.putString("USER_TYPE", hashmap.get("user_type"));
extras.putString("CREATED_AT", hashmap.get("created_at"));
intent.putExtras(extras);
startActivity(intent);
然后在另一個(gè) Activity 的 onCreate() 中您將使用:
Bundle extras = getIntent().getExtras();
String name = extras.get("NAME");
...

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超4個(gè)贊
您可以將 HashMap 轉(zhuǎn)換為 json 并通過(guò) Intent 發(fā)送。使用以下代碼發(fā)送意圖:
String jsonStaff = (new Gson()).toJson(staffList.get(position));
intent.putExtra("jsonStaff", jsonStaff);
并專注于另一項(xiàng)活動(dòng),如下所示:
String jsonStaff = intent.getStringExtra("jsonStaff");
HashMap<String,String > dataStaff = (new Gson()).fromJson(jsonStaff, new HashMap<String,String >().getClass());
就這些。
添加回答
舉報(bào)