尝试GSON
改变:)
从此链接下载 gson.jar
并在您的项目中添加 gson-2.2.2.jar 文件。
现在使用 GSON 将您的 LinkedHashMap 传递给另一个活动
像这样(根据您的需要修改下面的代码):
主要活动:::
public class MainActivity extends Activity {
ObjectClass obj=new ObjectClass();
LinkedHashMap<String, ObjectClass> mLinkedHashMap = new LinkedHashMap<String, ObjectClass>();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
obj.id=1;
obj.name="hello";
mLinkedHashMap.put("test", obj);
Gson gson = new Gson();
String list = gson.toJson(mLinkedHashMap);
Intent intent = new Intent(this, secondActivity.class);
intent.putExtra("list", list);
startActivity(intent);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
第二活动:::
public class secondActivity extends Activity {
LinkedHashMap<String, ObjectClass> mLinkedHashMap = new LinkedHashMap<String, ObjectClass>();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String str= getIntent().getStringExtra("list");
Gson gson = new Gson();
Type entityType = new TypeToken< LinkedHashMap<String, ObjectClass>>(){}.getType();
mLinkedHashMap = gson.fromJson(str, entityType);
ObjectClass obj = mLinkedHashMap.get("test");
Log.i("list", ""+obj.id);
}
}
为我工作。希望这会有所帮助。
这是我的对象类供参考。
public class ObjectClass {
public int id;
public String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
如何添加 gson-2.2.2.jar 文件。
1) 从下载的文件夹 "google-gson-2.2.2" 复制您的 gson-2.2.2.jar 。
2)将其粘贴到项目的资产文件夹中。
3)现在通过右键单击您的项目>构建路径>配置构建路径进入您的项目构建路径。
4)它将打开一个对话框,从右侧菜单中选择java构建路径并转到库标签,然后
单击“添加罐子。 .." 按钮,如下图所示
,它将打开另一个对话框来添加 jar。这里选择我们在项目资产文件夹中添加的 gson-2.2.2.jar(步骤 2)。
它会将 jar 添加到您的项目中(我已经在我的项目中添加了它,如下图所示)
5)现在选择 Order 和 Export 标签并选择您的 gson-2.2.2.jar(见下图)。
GSON