theme style studio programacion custom change android colors datepicker calendar selector

style - Android: ¿Cómo cambiar el color del selector de fecha en el widget Datepicker?



edit datepicker android (1)

esta es la primera vez que publico una pregunta.

Implementé con éxito un Datepicker en mi aplicación (solo para SDK 21 y superior). También quiero diseñar mi Datepicker para que se mezcle con el resto de la aplicación. Esto es lo que tengo:

<style name="MyDatePickerDialogTheme" parent="Theme.AppCompat.Light.Dialog"> <item name="android:datePickerStyle">@style/MyDatePickerStyle</item> <item name="android:colorAccent">@color/primDark</item> </style> <style name="MyDatePickerStyle" parent="@android:style/Widget.Material.Light.DatePicker"> <item name="android:headerBackground">@color/prim</item> <item name="android:calendarTextColor">@color/primDark</item> <item name="android:dayOfWeekBackground">@color/primDark</item> <item name="android:yearListSelectorColor">@color/accent</item> <item name="android:datePickerMode">calendar</item> </style>

No puedo encontrar el atributo para cambiar el color del selector de días en el calendario. Ningún atributo enumerado aquí hace eso. Sin embargo, pude cambiar el color del selector de años (ver el lado derecho de la captura de pantalla) con el atributo "yearListSelectorColor". ¿Cómo puedo colorear el selector correspondiente y el color de texto seleccionado en el lado izquierdo?

Para aclarar, así es como se ve mi Datepicker: Screenshots

Entonces, si alguien sabe cómo deshacerse de ese color verde azulado estándar, por favor dígame.

¡Gracias!


De acuerdo, creo que lo tengo.

Traté desesperadamente de encontrar un atributo en MyDatePickerStyle. La solución vino a mi mente cuando repensé toda la jerarquía de herencia. Solo tuve que agregar el colorAccent al MyDatePickerDialogTheme.

<style name="MyDatePickerDialogTheme" parent="Theme.AppCompat.Light.Dialog"> <!-- this is new --> <item name="colorAccent">@color/accent</item> <item name="android:datePickerStyle">@style/MyDatePickerStyle</item> <item name="android:colorAccent">@color/primDark</item> </style> <style name="MyDatePickerStyle" parent="@android:style/Widget.Material.Light.DatePicker"> <item name="android:headerBackground">@color/prim</item> <item name="android:calendarTextColor">@color/primDark</item> <item name="android:dayOfWeekBackground">@color/primDark</item> <item name="android:yearListSelectorColor">@color/accent</item> <item name="android:datePickerMode">calendar</item> <item name="android:minDate">01/01/2000</item> </style>

De alguna manera, pensé que cada tema tiene los colores primarios de AppTheme automáticamente.

Así que espero que esto ayude a alguien en el futuro.