2016-09-21 99 views
0

當我點擊ringtonePreference時,它會打開一個對話框列表鈴聲。但我想打開我的自定義對話框時,點擊偏好而不是默認對話框。任何人都可以幫助我獲取代碼示例防止鈴聲偏好在Android的默認行爲

我偏愛XML的ringtonePreference -

<RingtonePreference 
      android:key="@string/pref_key_sound_for_call" 
      android:title="@string/text_title_sound_for_call" 
      android:summary="@string/text_summery_sound_for_call" /> 

而且SettingsFragment打開我的自定義對話框 -

preferenceForCustomSoudCall.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { 
      @Override 
      public boolean onPreferenceClick(Preference preference) { 
       showInAppPurchaseDialog(); 
       return true; 
      } 
     }); 

回答

1

但我想開我的自定義對話框時,點擊偏好,而不是默認的對話

然後不要使用RingtonePreference。使用Preference,然後按照問題中的說明註冊您的點擊處理程序。或者,創建自定義DialogPreference,而不是自己顯示整個對話框。

+0

感謝您的快速回復。 CheckboxPreference和EditTextPreference是否有任何方法,而不使用偏好? –

+0

@AGMTazim:我很抱歉,但我不明白你的問題。 – CommonsWare

+0

我的問題是 - 有沒有辦法改變CheckboxPreference和EditTextPreference的默認行爲而不使用偏好?我的意思是打開自定義對話框而不是默認。 –