【问题标题】:Shared Preferences and Preference Fragment共享偏好和偏好片段
【发布时间】:2014-07-29 18:04:59
【问题描述】:

这是我的问题:

  1. 如何获取开关首选项的值?
  2. 首选项片段中的内容是否已经是共享首选项?
  3. 如果是这样,我如何从首选项片段访问共享首选项?

【问题讨论】:

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


    【解决方案1】:

    1.获取开关的值:

    CompoundButton cb = (CompoundButton)view.findViewById(R.id.myswitch);
    
    if(cb.isChecked())
        cb.setChecked(false);
    else
        cb.setChecked(true);
    

    参考:Toggle Buttons

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

    3.要获取PreferenceFragment 的SharedPreference 对象,请使用:

    getDefaultSharedPreferences(Context context)
    

    【讨论】:

    【解决方案2】:

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

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

    在首选项片段中,您会自动将首选项的数据链接在片段和 SharedPrefs 之间。

    另请看这个示例代码:http://www.mysamplecode.com/2011/11/android-shared-preferences-example_12.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多