java - 如何以编程方式设置 MultiSelectListPreference 的复选框值?
问题描述
我正在开发一个 android 应用程序,它从共享首选项中获取首选项摘要,现在我必须将这些值设置到 MultiSelectListPreference 的这个对话框中。
我得到了这样的东西(摘要是正确的,但未检查对话框值)
我用来将摘要与值更改绑定的代码(工作正常):
objects.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String values;
objects.setSummary(newValue.toString());
values = newValue.toString().replace("[", "");
values = values.replace("]", "");
editorObjects.putString(UserSharedPref.objectList, values);
editorObjects.commit();
return true;
}
});
值和摘要在上面的示例中绑定。
我正在从这样的用户共享首选项中初始化值(工作正常):
objects.setSummary(["+UserSharedPref.initializeSharedPreferencesForObjectList(getApplicationContext()).getString(UserSharedPref.objectList, "person,bicycle,motorcycle,car,bus,truck") + "]");
但是,根据此摘要检查值是我遇到问题的地方。我的方法应该如何?
解决方案
推荐阅读
- r - 从坐标大数据集中获取时区的最快方法(一百万个坐标或更多)
- julia - 在 Julia 中绘制函数的运行时间
- c++ - 如何释放向量中的指针?
- ruby - Ruby:解析长字符串
- powershell - 使 Set-AzureStorageBlobContent 的选项不会覆盖 blob(如果已存在)
- android - 您将如何让用户选择在 WebView 应用程序中从他的本机浏览器打开 URL?
- javascript - 在 Cloud Function Firebase 中创建 GeoHash(用于 GeoFire)
- python - 如何在运动物体的轨迹中找到冗余路径(子路径)?
- android - 应用程序模块在 Android Studio 中消失
- swift - 快速控制流计数与倍数