From 7da609173cb42dc5813fde09de2e1fe1218b2136 Mon Sep 17 00:00:00 2001 From: Kizito Nwose Date: Tue, 30 Jul 2019 13:25:15 +0100 Subject: [PATCH] Accommodate nullable view holder when calculating calendar height. --- .../java/com/kizitonwose/calendarview/ui/CalendarAdapter.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/library/src/main/java/com/kizitonwose/calendarview/ui/CalendarAdapter.kt b/library/src/main/java/com/kizitonwose/calendarview/ui/CalendarAdapter.kt index fa627118..32a847da 100644 --- a/library/src/main/java/com/kizitonwose/calendarview/ui/CalendarAdapter.kt +++ b/library/src/main/java/com/kizitonwose/calendarview/ui/CalendarAdapter.kt @@ -193,7 +193,8 @@ internal class CalendarAdapter( calWrapsHeight = it } if (calWrapsHeight.not()) return // Bug only happens when the CalenderView wraps its height. - val visibleVH = calView.findViewHolderForAdapterPosition(visibleItemPos) as MonthViewHolder + val visibleVH = + calView.findViewHolderForAdapterPosition(visibleItemPos) as? MonthViewHolder ?: return val newHeight = visibleVH.headerView?.height.orZero() + // For some reason `visibleVH.bodyLayout.height` does not give us the updated height. // So we calculate it again by checking the number of visible(non-empty) rows.