Изменить стиль диалога выбора мелодии звонка

Я разрабатываю приложение, у которого есть уведомление в какой-то момент. Я реализовал несколько методов, чтобы пользователь мог изменить звук уведомления. Как изменить стиль диалога выбора мелодии звонка?

Это мой код для выбора мелодии звонка:

public void getNotification(){
    Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
    intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, RingtoneManager.TYPE_NOTIFICATION);
    intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE, "Select Tone");
    intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, (Uri) null);
    this.startActivityForResult(intent, 5);
}

У меня уже есть собственный стиль для диалогов предупреждений (R.style.AlertDialogCustom). Как я могу использовать этот собственный стиль в диалоге выбора мелодии звонка?

1 ответ

Мне удалось решить мою проблему, добавив эту строку кода в метод выше:

public void getNotification(){
        Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
        intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, RingtoneManager.TYPE_NOTIFICATION);
        intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE, "Select Tone");
        intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, R.style.AlertDialogCustom); //this one
        intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, (Uri) null);
        this.startActivityForResult(intent, 5);
    }

И это стиль, соответствующий моему заказному AlertDialog:

<style name="AlertDialogCustom" parent="Theme.AppCompat.Light.Dialog.Alert">
        <item name="colorPrimary">@color/primary</item>
        <item name="colorPrimaryDark">@color/maroon</item>
        <item name="colorAccent">@color/primary</item>
    </style>
Другие вопросы по тегам