Где использовать функцию highlight () CalendarPickerView, чтобы она имела эффект? - PullRequest
0 голосов
/ 27 мая 2019

ИДЕЯ:

Я хочу выделить несколько дней в calendarPickerView, чтобы указать, что пользователь не может их выбрать.


ЧТО Я ДЕЛАЮ:

Эти дни извлекаются из веб-службы с использованием Retrofit. Проблема в том, что на модернизацию требуется некоторое время, чтобы дать мне результат, и из-за этого calendarPickerView уже отрисован, и из-за этого метод highlight () не имеет никакого эффекта ...!


МОИ МЫСЛИ:

  1. Каким-то образом заставьте фрагмент дождаться завершения модифицированного вызова, прежде чем рисовать.
  2. Вызвать какой-нибудь метод в CalendarPickerView, чтобы я увидел эффекты (я пытался сделать invalidate (), но он не работал)

Не понимаю, почему CalendarPickerView не перерисовывает себя после вызова метода highlight (). Кто-нибудь знает, почему я не могу сразу увидеть эффект этого метода ??

1 Ответ

0 голосов
/ 28 мая 2019

На самом деле это была глупая ошибка. CalendarPickerView перерисовывается каждый раз, когда я вызываю его метод highligh ().

Я по какой-то причине несколько раз вызывал init () в разных строках:

calendarViewSquare.init(prevYear.getTime(), nextYear.getTime())
                .inMode(CalendarPickerView.SelectionMode.MULTIPLE)
                .withSelectedDates(dates);

и когда вы это сделали, я заметил, что все очищено, то есть вы теряете свои выделенные дни. Это означает, что если вы установили выделенные дни, а затем снова вызвали init, то вы не увидите результатов ..

...