我有3-4个活动。其中一个是主要活动,第二个是首选项屏幕。我有一个首选项屏幕,有不同的首选项,比如ListPreference等,它们都有默认值。
当我开始我的项目时,如何激活Settings的默认值?
默认情况下,它们仅在我启动设置活动时激活。简而言之:我需要在main活动中使用默认值,而不调用Settings活动。
发布于 2011-02-16 22:30:14
我所做的是在我的Preferences活动类中有一个静态方法,因此可以从任何地方调用它:
static public boolean getOrderByDate(Context context) {
SharedPreferences prefs =
PreferenceManager.getDefaultSharedPreferences(context);
return prefs.getBoolean("order_by_date", true);
}注意,我的默认值(true)是在getBoolean()调用中指定的。如果希望在一个位置指定所有默认值,则可能需要调用Preference.setDefaultValue(),而不是在XML中设置它。
发布于 2011-02-16 22:17:22
如果您使用共享首选项,就像这样设置它。
public static String PlayerName = "";
public static int CardsCount = 52;
public static int PlayersCount = 5;还要实现LoadSettings()和SaveSettings()方法,这样就可以很好地工作
发布于 2011-02-16 22:17:36
使用SharedPreferences存储首选项,并将它们加载到MainActivity中。SharedPreferences有一些get方法,如果首选项还不存在,您可以传入默认值以返回这些方法。
更新:代码示例
在你的主要活动中
// get the shared preferences for your package context
SharedPreferences sharedPreferences = PreferencesManager.getSharedPreferences(this);
// get the boolean preference with a default value of false
boolean somePref = sharedPrefernces.getBoolean("somePref", false);
// get the string preference with a default value of "default"
String someOtherPref = sharedPreferences.getStirng("someOtherPref", "default");https://stackoverflow.com/questions/5017469
复制相似问题