我試圖使用複選框控件創建首選項屏幕。更改時從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