2012-07-26 147 views
4

我有一個共享首選項屏幕,複選框的列表首選項等。現在我想在共享首選項屏幕中添加一個按鈕,當我點擊它時會彈出一個對話框。我這樣做,它看上去很完美,使偏好屏幕上的按鈕:Android:偏好按鈕點擊?

<Preference 
     android:key="key" 
     android:summary="make pop up dialog" 
     android:title="dialog" /> 

但現在我不知道怎麼去當它被點擊我試過,但由於沒有偏好改變了我不能使用onSharedPreferenceChanged其只是點擊。那麼當點擊按鈕被點擊時我會做些什麼?謝謝您的幫助。

+0

看吧下http://stackoverflow.com/questions/ 11272839 /非棄用-findpreference-方法-機器人/ 23081464#23081464 – mehmet 2014-04-15 10:52:23

回答

5

首先,您的PreferenceActivity必須執行Preference.OnPreferenceClickListener。 然後,onCreate函數調用

findPreference(YOUR_KEY_PREF).setOnPreferenceClickListener(this);

,並添加此功能

@Override 
public boolean onPreferenceClick(Preference preference) { 
    String key = preference.getKey(); 
    if(key.equals(YOUR_KEY_PREF)){ 
     showYourDialog(); 
     return true; 
    } 
    return false; 
} 

在你的情況,YOUR_KEY_PREF"key"