使用PreferenceActivity,Android会自动保存简单的首选项,例如选中复选框等。我有两个问题:
1-这些首选项在哪里保存?是否与PreferenceManager.getDefaultSharedPreferences(Context)返回的首选项文件相同?
2-是否可以使用一组不同的首选项?即使用context.getSharedPreferences(字符串名称,int模式),您可以提供一个字符串来标识一组特定的首选项。是否可以在这样返回的一组首选项中保存PreferenceActivity中的首选项?
谢谢,巴里
是有可能。
看看: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()
之后调用!