防止在android中使用ringtonepreference的默认行为

时间:2016-09-21 12:08:37

标签: java android xml android-preferences preferenceactivity

当我点击ringtonePreference时,它会打开一个包含铃声列表的对话框。但是我想在单击首选项而不是默认对话框时打开我的自定义对话框。任何人帮我提供代码示例。

我的首选xml for 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 个答案:

答案 0 :(得分:1)

  

但我想在点击偏好而不是默认对话框时打开我的自定义对话框

然后不要使用RingtonePreference。使用Preference,并在问题中注册您的点击处理程序。或者,创建自定义DialogPreference,而不是自己显示整个对话框。