How to highlight multiple dates in a android CalendarView programmatically

ChyperX picture ChyperX · Nov 23, 2017 · Viewed 16.5k times · Source

I need to highlight several dates in a CalendaView. that should look like, enter image description here

I tried setDate(), but it didn't work as I want. Please help me to find a solution. Thanks in advance.

Answer

sagar potdar picture sagar potdar · Apr 27, 2018

Follow this link to get the library mCalendarView

1.Use 3rd party library McalenderView.

2.Add to your gradle:-

'sun.bob:mcalendarview:1.0.0'

Try this code:-

3.Some code:-

calendarView = ((MCalendarView) view.findViewById(R.id.calendar_exp));

    ArrayList<DateData> dates=new ArrayList<>();
    dates.add(new DateData(2018,04,26));
    dates.add(new DateData(2018,04,27));

    for(int i=0;i<dates.size();i++) {
        calendarView.markDate(dates.get(i).getYear(),dates.get(i).getMonth(),dates.get(i).getDay());//mark multiple dates with this code.
    }


    Log.d("marked dates:-",""+calendarView.getMarkedDates());//get all marked dates.