1

I'm working with CalendarView in fragments. I've added events to it. I've to highlight a date in which i've added events. Cant get any api for highlighting particular date in default calendar view.

Any help is appreciated!!

Basim Majeed
  • 110
  • 1
  • 15
  • possible duplicate of [Android CalendarView for Showing Events](http://stackoverflow.com/questions/16556254/android-calendarview-for-showing-events) – Dracontis Oct 28 '14 at 12:12
  • Also, you could use external library. I think Caldroid is good for hightlighting dates. – Dracontis Oct 28 '14 at 12:13

1 Answers1

-1

private void setCustomResourceForDates() {

    Calendar cal = Calendar.getInstance();
    //highlighlighting the holidays in a month taking the static dates
    ArrayList<String> dates = new ArrayList<String>();
    dates.add("02-08-2015");
    dates.add("22-08-2015");
    dates.add("17-09-2015");
    dates.add("25-09-2015");
    dates.add("27-09-2015");
    dates.add("13-10-2015");
    dates.add("22-10-2015");
    SimpleDateFormat myFormat = new SimpleDateFormat("dd-MM-yyyy");
    Date date = new Date();
    for (int i = 1; i < dates.size(); i++) {
        inputString2 = dates.get(i);
        inputString1 = myFormat.format(date);

        try {
            //Converting String format to date format
            date1 = myFormat.parse(inputString1);
            date2 = myFormat.parse(inputString2);
            //Calculating number of days from two dates
            long diff = date2.getTime() - date1.getTime();
            long datee = diff / (1000 * 60 * 60 * 24);
            //Converting long type to int type
            day = (int) datee;
        } catch (ParseException e) {
            e.printStackTrace();
        }
        cal = Calendar.getInstance();
        cal.add(Calendar.DATE, day);
        holidayDay = cal.getTime();
        colors();

        /*cal = Calendar.getInstance();
        cal.add(Calendar.DATE,0);
        minDay = cal.getTime();

        cal = Calendar.getInstance();
        cal.add(Calendar.DATE,0);
        maxDay = cal.getTime();

        caldroidFragment.setMinDate(minDay);
        caldroidFragment.setMaxDate(maxDay);*/


    }
}

public void colors() {
    if (caldroidFragment != null) {
        caldroidFragment.setBackgroundResourceForDate(R.color.green,
                holidayDay);
        caldroidFragment.setTextColorForDate(R.color.white, holidayDay);
    }
}

call this setCustomResourceForDates() in onCreate() --(in Caldroid Calendar)