Я использую Theme.MaterialComponents.DayNight.NoActionBar
в качестве темы приложения, и у меня возникают странные проблемы, когда дело доходит до цветов кнопок, и есть некоторые проблемы с интервалом, с которыми я сталкиваюсь.
Я читал, что добавление <item name="viewInflaterClass">androidx.appcompat.app.AppCompatViewInflater</item>
должно исправить это, и это так, но я хочу знать, есть ли другой способ изменить его, чтобы он работал, как раньше, поскольку при таком подходе могут быть проблемы.
Это не только кнопки выбора даты, но и DialogFragments.
DatePickerDialog затемнил кнопки в androidx.fragment.app. DialogFragment
ColorPrimary устанавливается для самой кнопки. Есть ли другой способ перезаписать это поведение?
Вот мой стиль
<style name="AppTheme" parent="Theme.MaterialComponents.DayNight.NoActionBar.FullScreen">
<item name="colorPrimary">@color/colorPrimary</item> // Blue
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="colorControlNormal">@color/colorControlNormal</item>
<item name="colorControlActivated">@color/colorControlActivated</item>
<item name="colorSwitchThumbNormal">@color/colorSwitchThumbNormal</item>
<item name="android:textColorPrimary">@android:color/primary_text_light</item>
<item name="android:textColorSecondary">@android:color/secondary_text_light</item>
<item name="android:textColorPrimaryInverse">@android:color/primary_text_dark</item>
<item name="android:windowBackground">@android:color/background_light</item>
<item name="dialogTheme">@style/DialogStyle</item>
<item name="alertDialogTheme">@style/AlertDialogStyle</item>
<item name="md_positive_color">@color/dialog_positive_text</item>
<item name="md_neutral_color">@color/dialog_neutral_text</item>
<item name="md_negative_color">@color/dialog_negative_text</item>
//Adding the bellow line fixes it
<item name="viewInflaterClass">androidx.appcompat.app.AppCompatViewInflater</item>
</style>
<style name="Theme.MaterialComponents.DayNight.NoActionBar.FullScreen" parent="Theme.MaterialComponents.DayNight.NoActionBar">
<item name="android:windowNoTitle">true</item>
<item name="android:windowTranslucentNavigation">true</item>
<item name="windowActionBar">false</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
</style>
Но выглядит вот так с этой темой
MaterialDatePicker
. ДляAlertDialog
используется атрибутmaterialAlertDialogTheme
и проверьте это сообщение, чтобы настроить кнопки. Также добавьтеcolorOnPrimary
в тему своего приложения - person Gabriele Mariotti   schedule 14.10.2019