共享首选项和首选项片段

时间:2014-06-09 08:14:59

标签: android android-fragments android-preferences android-switch

以下是我的问题:

  1. 如何获取切换首选项的值?
  2. 首选项片段中的内容是否已成为共享首选项?
  3. 如果是,我如何从首选项片段访问共享首选项?

2 个答案:

答案 0 :(得分:2)

1。要获取开关的值:

CompoundButton cb = (CompoundButton)view.findViewById(R.id.myswitch);

if(cb.isChecked())
    cb.setChecked(false);
else
    cb.setChecked(true);

参考:Toggle Buttons

2。是的,PreferenceFragment中的元素会自动存储。

3。要获取SharedPreference的{​​{1}}对象,请使用:

PreferenceFragment

答案 1 :(得分:0)

这是一个关于如何制作PreferenceFragment的惊人示例: http://android-er.blogspot.hu/2012/07/example-of-using-preferencefragment.html

基本上它的工作方式是用你的类型和键定义首选项。首选项片段将其数据存储在您通过Android getDefaultSharedPreferences获取的SharedPreferences中,并编辑其值并从编辑器中获取它们。

在Preference Fragment中,您自动拥有Fragment和SharedPrefs之间链接的prefs数据。

另请参阅此示例代码:http://www.mysamplecode.com/2011/11/android-shared-preferences-example_12.html