可能是我有点困惑,但是我很难弄清楚如何设置特定SharedPreferences的默认值。

据我了解,该方法

PreferenceManager.setDefaultValues(ctx, R.xml.myprefs, true);


仅适用于DefaultSharedPreferences。就我而言,我使用不同的SharedPreferences,并且必须设置其中之一的默认值,而不是DefaultSharedPreferences。所以我想念像

PreferenceManager.setDefaultValues(mySharedPrefs, R.xml.myprefs, true).


我在俯视什么吗?

提前致谢!
汤玛士

最佳答案

PreferenceManageroverloads this method使指定首选项文件和模式成为可能:

public static void setDefaultValues(Context context, String sharedPreferencesName,
                                    int sharedPreferencesMode, int resId, boolean readAgain)


从参考摘录:


  与setDefaultValues(Context,int,boolean)类似,但允许
  客户端提供共享首选项的文件名和模式
  文件。


尽管您不能将SharedPreference对象本身作为参数传递,但传递首选项文件的正确sharedPreferencesName和sharedPreferencesMode将指向相同的实例。

09-05 05:44