I’m trying to implement a CalendarView, it takes an absurd amount of time (about 10 seconds) to appear on screen and it only loads the month and weekday headers, it does not display any calendar content.
Using the same code from this video but not seeing the same result. I’m trying to launch it in a dialog:
CalendarView calendarView = new CalendarView(this);
but when I tried to embed it in an activity it took the screen the same amount of time to load and similarly failed to display correctly.
The tracing helped reveal that GregorianCalendar was being called thousands of times.
It seems that when the calendar days aren’t visible, it tries to calculate all of the dates rather than just the visible ones.
The issue of the CalendarView only displaying the header information was solved by setting the
layout_height explicitly. Neither
match_parent worked properly to display the calendar contents.