我试图使用复选框控件创建首选项屏幕。更改时从CheckBoxPreference获取值
<CheckBoxPreference android:summaryOn="@string/mySummaryOn"
android:summaryOff="@string/mySummaryOff"
android:key="myCB"
android:title="my checkbox"/>
我想在得到改变时得到这个布尔值。
在我的应用程序有如下实施OnSharedPreferenceChangeListener
public boolean cbValue;
@Override
public void onCreate() {
// The following line triggers the initialization of ACRA
ACRA.init(this);
prefs=PreferenceManager.getDefaultSharedPreferences(this);
prefs.registerOnSharedPreferenceChangeListener(this);
super.onCreate();
}
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
String key) {
// TODO Auto-generated method stub
//FacebookStatus=prefs.getBoolean("myCB", true);
Toast.makeText(getBaseContext(), "Shared Preference Changes ",Toast.LENGTH_LONG).show();
}
onSharedPreferenceChanged方法甚至当我在切换屏幕PREF复选框不是在所有所谓的完成。
如果我需要从共享首选项中获取值,那么每次值改变时我应该怎么做?
我已经通过[Shared Preferences]解决了这个问题(http://stackoverflow.com/questions/531427/how-do-i-display-the-current-value-of-an-android-preference-in-the -preference-su)....感谢很多家伙的帮助 – shanmugamgsn