пользовательские темы android.app.AlertDialog не работают

#android #themes #android-alertdialog #android-theme #android-styles

#Android #темы #android-alertdialog #android-theme #android-стили

Вопрос:

Я хочу изменить тему AlertDialog по умолчанию.

Ни один из примеров, которые я нашел, не сработал. Вот что я делаю:

 <style name="LightTheme" parent="Theme.AppCompat.Light.NoActionBar">
    ...
    <item name="alertDialogTheme">@style/MyCustomDialog</item>
</style>

<style name="MyCustomDialog" parent="Theme.AppCompat.Light.Dialog.Alert">
    <item name="android:background">#000000</item>
    <item name="android:textColor">#FFFFFF</item>
</style>
  

Я делаю что-то не так?

Комментарии:

1. Добавьте свой макет ( xml ) или код класса, в котором вы используете эту тему.

2. Не должно ли это изменить тему для всего проекта? Я использую new AlertDialog.Builder(context)

3. Является ли ваша LightTheme основная тема приложения (которую вы используете, например, в манифесте)?

4. Да, это так. android:theme="@style/LightTheme"

Ответ №1:

ОК. У меня есть решение.

Вы должны заменить android.app.AlertDialog на android.support.v7.app.AlertDialog , и в вашей пользовательской теме вы должны установить <item name="colorAccent">@color/colorAccent</item>