我在旧意图(SaleActivity)中添加了arraylist额外的hashmap
Intent newActivity = new Intent(SaleActivity.this,UpdateActivity.class);
newActivity.putExtra("saleArrList", saleArrList);
startActivity(newActivity);
然后,我从newactivity(UpdateActivity)
获取它Intent intent= getIntent();
final ArrayList<HashMap<String, String>> saleArrList = intent.get...Extra("saleArrList");
我应该使用什么代码......感谢所有人的回答。
答案 0 :(得分:1)
当您添加额外内容时,它会将您的数组列表视为Serializable
。你应该使用:
Serializable serialized = intent.getSerializableExtra("saleArrList");
不幸的是,将其转换为ArrayList<HashMap<String,String>>
会生成有关未经检查的转换的编译器警告。这是由于类型擦除在Java中的工作原理。没有干净简单的方法可以摆脱这种警告。不洁的方法是通过添加
@SuppressWarnings("unchecked")
位于方法的顶部。这会抑制所有未经检查的转换警告,因此不是特别安全。但是,您可以写:
final ArrayList<HashMap<String, String>> saleArrList =
(ArrayList<HashMap<String,String>>)intent.getSerializableExtra("saleArrList");