【问题标题】:Material Date Range Picker selection color formatting材料日期范围选择器选择颜色格式
【发布时间】:2020-06-01 05:12:24
【问题描述】:

当您在范围选择器中选择两个日期时,中间日期会突出显示。如何更改中间日期的颜色?

【问题讨论】:

标签: android datepicker android-datepicker material-components-android material-components


【解决方案1】:

您可以将样式定义为:

  <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>

【讨论】:

  • 如果我只想更改标题颜色怎么办?怎么做?以及是否可以更改标题“SELECT A DATE RANGE”的大小?
  • @RoohAl-mahaba 是的,您可以使用日历主题叠加层中的materialCalendarHeaderLayoutmaterialCalendarHeaderTitle 属性更改它们。
  • 你能用例子回答我的问题吗,我发了一个问题,谢谢你的帮助
  • 什么是materialCalendarHeaderLayout
猜你喜欢
  • 1970-01-01
  • 2019-03-04
  • 2021-11-08
  • 2020-11-01
  • 1970-01-01
  • 2018-08-25
  • 2018-04-20
  • 2020-08-30
  • 2020-05-09
相关资源
最近更新 更多