Android:使用 PreferenceActivity(或 PreferenceFragment)但使用我自己的代码 save/load 值
Android: using a PreferenceActivity (or PreferenceFragment) but with my own code to save/load values
我正在开发一个 Android 应用程序,它需要显示带有各种开关和其他内容的设置屏幕。
问题是这样的:该应用程序是一个多平台项目,我已经有自定义代码用于以跨平台方式保存和加载我的首选项,所以我不会依赖 Android的SharedPreferences
机制。
我想做的是以编程方式创建一个 PreferenceActivity
并用我的设置填充它,但是让设置值通过我自己的自定义代码获得 loaded/saved。
换句话说:我想重用 PreferenceActivity
提供的漂亮 "list with sections and editing controls",但我想动态填充它并实现我自己的代码 set/get 偏好值。
我找不到太多关于此的文档,有人知道从哪里开始吗?
它的工作原理与任何其他设置非常相似。只需获取对 UI 小部件的引用,在需要时保存它并在需要时设置它。
//get reference to setting
CheckBoxPreference myCheckBox = (CheckBoxPreference) findPreference("myKey");
// Set the preference
myCheckBox.setChecked(true);
//Save setting
boolean settingToSave=myCheckBox.isChecked();
使用与此类似的代码解决了问题:
唯一缺少的是监听器的实现来监视变化,可以使用以下方法轻松设置:
Preference.setOnPreferenceChangeListener(Preference.OnPreferenceChangeListener onPreferenceChangeListener)
我正在开发一个 Android 应用程序,它需要显示带有各种开关和其他内容的设置屏幕。
问题是这样的:该应用程序是一个多平台项目,我已经有自定义代码用于以跨平台方式保存和加载我的首选项,所以我不会依赖 Android的SharedPreferences
机制。
我想做的是以编程方式创建一个 PreferenceActivity
并用我的设置填充它,但是让设置值通过我自己的自定义代码获得 loaded/saved。
换句话说:我想重用 PreferenceActivity
提供的漂亮 "list with sections and editing controls",但我想动态填充它并实现我自己的代码 set/get 偏好值。
我找不到太多关于此的文档,有人知道从哪里开始吗?
它的工作原理与任何其他设置非常相似。只需获取对 UI 小部件的引用,在需要时保存它并在需要时设置它。
//get reference to setting
CheckBoxPreference myCheckBox = (CheckBoxPreference) findPreference("myKey");
// Set the preference
myCheckBox.setChecked(true);
//Save setting
boolean settingToSave=myCheckBox.isChecked();
使用与此类似的代码解决了问题:
唯一缺少的是监听器的实现来监视变化,可以使用以下方法轻松设置:
Preference.setOnPreferenceChangeListener(Preference.OnPreferenceChangeListener onPreferenceChangeListener)