我想在内部存储中存储一些数据,如键和值对。所以我使用 HashMap 来存储键值对。但是我没有足够的解决方案来存储和检索这个 HashMap 到 sharedpreferences 中。请给我一些解决方案。
我把我的代码放在下面:
HashMap<String, String> MapListMesasges = new HashMap<String, String>();
MapListMesasges.put(FromName, message.getBody());
preferences = mActivity.getSharedPreferences(
SharePreference_messages_history_name,
Context.MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
for (Entry<String, String> entry : MapListMesasges
.entrySet()) {
editor.putString(entry.getKey(), entry.getValue());
}
editor.commit();
并从 Sharedpreferences 中检索数据:
preferences = mActivity.getSharedPreferences(
SharePreference_messages_history_name, Context.MODE_PRIVATE);
for (Entry<String, ?> entry : preferences.getAll().entrySet()) {
MapListMesasges.put(entry.getKey(), entry.getValue().toString());
}
我还将hashmap存储在适配器中并设置到listview中。我的主要目的是将数据存储和检索到共享首选项中,并将数据显示到列表视图中。
提前致谢。