我希望在内部存储中存储一些类似键和值对的数据。因此,我使用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();
从Sharedprefernces中检索和获取数据:
preferences = mActivity.getSharedPreferences(
SharePreference_messages_history_name, Context.MODE_PRIVATE);
for (Entry<String, ?> entry : preferences.getAll().entrySet()) {
MapListMesasges.put(entry.getKey(), entry.getValue().toString());
}
我会在适配器中存储哈希映射,并将其设置为列表视图。我的主要目的是将数据存储和检索到共享首选项中,同时将数据显示在列表视图中。
提前致谢。
SharedPreferences
不应该被这样使用。然而,你可以像那样使用它,代码看起来好像能够工作。但是如果你有一个未定义的键集,你应该考虑使用数据库或其他东西。 - zapl