您可以使用以下代码将数据保存到SharedPreferances:
Map<Integer, Object> aMap = new HashMap<Integer, Object>();
aMap.put(String.valueOf(1), object1);
aMap.put(String.valueOf(2), object2);
aMap.put(String.valueOf(3), object3);
SharedPreferences keyValues = getSharedPreferences("Your_Shared_Prefs", Context.MODE_PRIVATE);
SharedPreferences.Editor keyValuesEditor = keyValues.edit();
for (Integer s : aMap.keySet()) {
keyValuesEditor.putString(String.valueOf(s), toString(aMap.get(s)));
}
keyValuesEditor.commit();
toString() 方法取自那里:How to serialize an object into a string
然后像这样重新打开应用程序调用smth:
SharedPreferences keyValues = getSharedPreferences("Your_Shared_Prefs", Context.MODE_PRIVATE);
Map<Integer, Object> map = new HashMap<Integer, Object>();
for (String key : keyValues.getAll().keySet()) {
map.put(Integer.valueOf(key), fromString(keyValues.getString(key, null)));
}