最近我遇到了一个我不知道如何解决的问题。
我有2个不同的ArrayLists
,每个人都在另一个Activity
。
我的目标是将症状(自定义对象)从一个列表移动到另一个列表,我认为我可以使用SharedPreferences
来移动数据,但是如果我想移动多个症状,它不起作用。
在发送屏幕上;
//My attempt :
SharedPreferences sp=getSharedPreferences("syms", 0);
Editor edit=sp.edit();
edit.putString("SYM_Name", mySym.get(position).name);
edit.putString("SYM_Details", mySym.get(position).details);
edit.commit();
在接收屏幕上:
SharedPreferences sp = getSharedPreferences(“syms”,0);
allSym.add(新症状(sp.getString(“SYM_Name”,null),sp.getString(“SYM_Details”,null)));
我希望你们能在这里帮助我,
提前致谢;
的Yaniv。
答案 0 :(得分:0)
还可以尝试通过Intent传递数据。
答案 1 :(得分:0)
如果您从活动一开始活动二。然后你可以通过Intent传递对象。
Intent intent = new Intent(this, ActivityTwo.class);
intent.putExtra("symptoms", list);
startActivity(intent);
由于ArrayList是Serializable,你可以在putExtra()中使用。
答案 2 :(得分:0)
您可以使用Gson将它们解析为Json,然后您可以将该字符串放入SharedPrefs中,然后将其解析回来。