Как отключить ТЕКУЩУЮ ДАТУ и ПРЕДЫДУЩУЮ ДАТУ для WeekDatePicker

Кто-нибудь знает, как отключить CURRENT DATE а также PREVIOUS DATE'S за WeekDatePicker в Android?

В обычном DatePicker мы можем использовать это,

calendarView.newState().setMinimumDate(calendar.getTime()).commit();
calendarView.setLimits();

calendarView.addDecorator(new DayViewDecorator() {
    @Override
    public boolean shouldDecorate(CalendarDay calendarDay)

    {
        return false;
    }

    @Override
    public void decorate(DayViewFacade view) {
        view.setDaysDisabled(true);
    }
});

А как отключить CURRENT DATE а также PREVIOUS DATE'S в "WeekDatePicker"?

1 ответ

Решение

Похоже, вы используете WeekDatePicker

Согласно документации, calendarView.setLimits() имеет From а также To в качестве аргументов, так что вы можете попробовать обнулить to и установить для from текущую дату:

datePicker.setLimits(LocalDate.now(), null);

Тем не менее, при запуске этого казалось, что текущий день остается выбранным, и когда я добавляю к нему день, он будет иметь индикатор текущей даты, как и днем ​​ранее. Я исправил это с помощью следующего кода, который кажется немного странным, но, кажется, также работает:

datePicker.setDateIndicator(LocalDate.now().plusDays(1), true);
datePicker.setLimits(LocalDate.now().plusDays(1), null);
datePicker.selectDay(LocalDate.now().plusDays(1));

тестируя это, похоже, что он дает желаемый эффект:

Другие вопросы по тегам