我有这个
mSharedPref.edit().putString("newuser",model.getName()).apply();
这就是我在onStart()
方法
Log.e("ONSTARTUSER",""+ mSharedPref.getString("newuser",null));
我的输出就是这个
ONSTARTUSER:荷马辛普森
但是我有一个名字的集合,比方说10个名字,我希望我的共享首选项在我调用getString(“newuser”)时显示它们,我该怎么做?我正在使用firebaselistadapter
答案 0 :(得分:1)
首先将您的列表转换为集合:
Set<String>usersSet= new HashSet<>(usersList);
然后将该集保存到SharedPreferences:
SharedPreferences prefs = getSharedPreferences();
SharedPreferences.Editor editor = prefs.edit();
editor.putStringSet("newusers", usersSet);
并得到他们:
SharedPreferences prefs= getSharedPreferences();
Set<String> usersSet= prefs.getStringSet("newusers", new HashSet<String>());
答案 1 :(得分:1)
两种选择:使用带有editor.putStringSet()的StringSet或使用SQLite数据库。
数据库似乎是我维护名单(或任何列表)的最佳解决方案,更安全。例如,如果您的应用被系统杀死,您可能会使用共享首选项丢失数据。