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

我对ringtonePreference的首选项xml-

<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;
            }
        });

最佳答案

但是我想在单击首选项而不是默认对话框时打开我的自定义对话框


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

07-26 09:28