我试图用XML中的样式代码来改变颜色。我无法更改日历的背景色。
在下面的图片中,我想要将右侧的白色区域更改为我选择的一些自定义颜色。

目前,我正在使用以下主题,以改变颜色在左边的蓝色,和一些圆角。
<!--Calendar-->
<style name="AppDatePicker" parent="@style/ThemeOverlay.MaterialComponents.MaterialCalendar">
<item name="colorPrimary">@color/blue_click</item>
<item name="shapeAppearanceMediumComponent">@style/ShapeAppearance.App.MediumComponent
</item>
</style>
<style name="ShapeAppearance.App.MediumComponent" parent="ShapeAppearance.MaterialComponents.MediumComponent">
<item name="cornerSize">16dp</item>
</style>
long today = MaterialDatePicker.todayInUtcMilliseconds();
// going back by a week
long startDate = today - 604800000L;
long endDate = today;
// setting available days for a week only
List<CalendarConstraints.DateValidator> validatorList = new ArrayList<>();
validatorList.add(DateValidatorPointBackward.now());
validatorList.add(DateValidatorPointForward.from(startDate));
CalendarConstraints constraints = new CalendarConstraints.Builder()
.setStart(startDate)
.setEnd(endDate)
.setOpenAt(today)
.setValidator(CompositeDateValidator.allOf(validatorList))
.build();
MaterialDatePicker<Long> selectDate = MaterialDatePicker.Builder
.datePicker()
.setCalendarConstraints(constraints)
.setTheme(R.style.AppDatePicker)
.setSelection(sharedPref.getSelectedSyncDate())
.setTitleText("SELECT DATE")
.build();
DateFormat dateFormat = new SimpleDateFormat("MM-dd");
Calendar cal = Calendar.getInstance();
selectDate.show(getActivity().getSupportFragmentManager(), "DATE_PICKER"); 发布于 2022-06-10 11:11:43
也许问题就在这里
<style name="ThemeOverlay.App.MaterialCalendar" parent="ThemeOverlay.MaterialComponents.MaterialCalendar">
<!-- just override the colors used in the default style -->
<item name="colorOnPrimary">@color/...</item>
<item name="colorPrimary">@color/...</item>
</style>https://stackoverflow.com/questions/72573035
复制相似问题