在一个列表中有一些数据的列表,我想在点击的时候,把它发送到其它的 activity。
使用 intent 发送数据
Intent i = new Intent(MainActivity.this,AppDiscription.class);
i.putExtra("NAME", s);
i.putExtra("AMT", Appname);
i.putExtra("COUNT", cnvert);
i.putExtra("SELECTEDID", selectedFromList);
startActivity(i);
on receiving activity:
if (extras != null) {
Appname = extras.getString("NAME");
total = extras.getString("AMT");
count = extras.getString("COUNT");
selected = extras.getString("SELECTEDID");
}
现在我要把"selected" 保存到这个 activity 的变量中,这样我就可以与新
"selected" 的数据做比较。这个新的数据是当我点击 listview 时,来自下一个 intent 的数据。
那么如何在当前的 activity 中保存数据,下次可以在相同的 activity 中访问?
你返回的话activity就消毁了,所以你的数据要永久化,保存到文件中或者...
建议:将selected保存到SharedPreference中
SharedPreference sp = PreferenceManager.getDefaultSharedPreference();
Editor editor = sp.edit();
editor.putString(selected);
editor.commit();
下次进来再读出来比较一下就可以了。。。
上面代码是手打的,不要复制。。。
使用一个 ArrayList,添加所有的 selected 字符串,用下面的代码来比较:
list.get(last) == list.get(last-1);
如果你只想比较之前的和现在创建的值,使用 sharedprefrence。