android - SharedPreference.Editor 与 multiSelectListPreference
问题描述
所以我有一个 multiSelectListPreference 并且我想在用户更改他的偏好时使用 SharedPreference.Editor 来更改我的数据库中的 multiSelectListPreference 的值。为此,我对每个选项使用 putBoolean 函数。但是我不知道我应该使用什么作为第一个参数(问号在哪里)。
在 android 文档中,他们说第一个参数应该是要修改的首选项的名称。multiSelectListPreference 的 android:key 是“options_list”。如何在我的 multiSelectListPreference 中获取每个单独选项的键?
private SharedPreferences.Editor spPreferencesEditor;
spPreferencesEditor.putBoolean("?", preferences.getBooleanOfOption1());
spPreferencesEditor.putBoolean("?", preferences.getBooleanOfOption2());
spPreferencesEditor.putBoolean("?", preferences.getBooleanOfOption3());
解决方案
你应该在那里放一个默认的名字,你喜欢的每一个名字。重要的是,不同股份偏好的名称应该不同,这样才能被识别。例如,您可能有:
spPreferencesEditor.putBoolean("1", preferences.getBooleanOfOption1());
spPreferencesEditor.putBoolean("2", preferences.getBooleanOfOption2());
spPreferencesEditor.putBoolean("3", preferences.getBooleanOfOption3());
推荐阅读
- javascript - 防止在Vue.js中@click上的锚标记重新加载页面
- javascript - 如何将所有快速页面路由到唯一页面(没有 html 扩展名)
- javascript - 如何通过标题和描述找到类似的公告?
- node.js - 我在 azure VM 上的反应应用程序没有出现
- reactjs - React-Map-GL - 无法将环境变量传递给组件
- python - 为什么我的 pyqt5 的 appendPlainText 不起作用?
- python - 如何在 scipy.odeint 中使用列表或数组变量
- javascript - 如何重构此代码以使图像文件显示在浏览器上?
- google-chrome - Chrome 扩展:如何监听启用/重新启用的事件
- microsoft-graph-api - 尝试使用 Microsoft 图形 API 将应用程序发布到目录时出现“上下文为空或 TenantId 为空或 UserId 为空”