【发布时间】:2020-06-01 05:12:24
【问题描述】:
当您在范围选择器中选择两个日期时,中间日期会突出显示。如何更改中间日期的颜色?
【问题讨论】:
标签: android datepicker android-datepicker material-components-android material-components
当您在范围选择器中选择两个日期时,中间日期会突出显示。如何更改中间日期的颜色?
【问题讨论】:
标签: android datepicker android-datepicker material-components-android material-components
您可以将样式定义为:
<style name="MaterialCalendarTheme_RangeFill" parent="ThemeOverlay.MaterialComponents.MaterialCalendar">
<item name="materialCalendarStyle">@style/MyMaterialCalendar</item>
</style>
<style name="MyMaterialCalendar" parent="Widget.MaterialComponents.MaterialCalendar">
<item name="rangeFillColor">@color/my_calendar_range</item>
</style>
使用这个选择器:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:alpha="..." android:color="@color/...."/>
</selector>
然后在你的代码中:
MaterialDatePicker.Builder<Pair<Long, Long>> builderRange =
MaterialDatePicker.Builder.dateRangePicker();
builderRange.setTheme(R.style.MaterialCalendarTheme_RangeFill);
如果您只想完全更改 MaterialDatePicker 中的颜色,您还可以使用类似:
<style name="MaterialCalendarTheme_RangeFill" parent="ThemeOverlay.MaterialComponents.MaterialCalendar">
<item name="colorPrimary">@color/....</item>
</style>
【讨论】:
materialCalendarHeaderLayout 和materialCalendarHeaderTitle 属性更改它们。
materialCalendarHeaderLayout?