【问题标题】:Using non-default preferences in PreferenceActivity在 PreferenceActivity 中使用非默认首选项
【发布时间】:2011-12-23 01:08:10
【问题描述】:

使用 PreferenceActivity,Android 会自动保存简单的首选项,例如选中的复选框等。我有几个问题:

1 - 这些首选项保存在哪里? PreferenceManager.getDefaultSharedPreferences(Context) 返回的首选项文件是否相同?

2 - 有没有办法使用不同的偏好设置? IE。使用 context.getSharedPreferences (String name, int mode) 您提供一个字符串来标识一组特定的首选项。是否可以将 PreferenceActivity 中的首选项保存在这样返回的一组首选项中?

提前致谢, 巴里

【问题讨论】:

  • 你有答案吗

标签: android sharedpreferences preferenceactivity


【解决方案1】:

是的,这是可能的。

看看那个: https://idlesun.blogspot.com/2012/12/how-to-make-preferenceactivity-use-non.html

public class MyPreferencesActivity extends PreferenceActivity {
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        PreferenceManager prefMgr = getPreferenceManager();
        prefMgr.setSharedPreferencesName("my_preferences");
        prefMgr.setSharedPreferencesMode(MODE_WORLD_READABLE);

        addPreferencesFromResource(R.xml.preferences);
    }
}

addPreferencesFromResource() 必须在setSharedPreferencesName() 之后调用!

【讨论】:

  • 链接的危险...他们已将位置更新为idlesun.blogspot.com/2012/12/… -- 但是,该链接仅在此处的帖子中添加一点...@ stephane 发布了重要的代码。 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-28
相关资源
最近更新 更多