Java 如何在times Square android datepicker库中禁用选定日期的单元格?

Java 如何在times Square android datepicker库中禁用选定日期的单元格?,java,android,datepicker,Java,Android,Datepicker,我正在尝试禁用时代广场日期选择器库中的选定日期 我在onclicklistener中添加了以下代码 myCalendar.add(Calendar.YEAR, 1); calendar = (CalendarPickerView) calendarlayout.findViewById(R.id.calendar_view); Button donebutton = (Button) calendarlayout.findV

我正在尝试禁用时代广场日期选择器库中的选定日期

我在onclicklistener中添加了以下代码

            myCalendar.add(Calendar.YEAR, 1);
            calendar = (CalendarPickerView) calendarlayout.findViewById(R.id.calendar_view);
            Button donebutton = (Button) calendarlayout.findViewById(R.id.done_button);
            Date today = new Date();
            calendar.init(today, myCalendar.getTime())
                    .inMode(CalendarPickerView.SelectionMode.RANGE)
            .withHighlightedDates(getHolidays());
getholidays函数返回日期的数组列表

private ArrayList<Date> getHolidays() {
    SimpleDateFormat sdf = new SimpleDateFormat("dd-M-yyyy");
    String dateInString = "21-07-2015";
    String dateInString1 = "22-07-2015";
    String dateInString2 = "23-07-2015";
    ArrayList<Date> holidays = new ArrayList<>();
    Date date, date1, date2 = null;
    try {
        date = sdf.parse(dateInString);
        holidays.add(date);
        date1 = sdf.parse(dateInString1);
        holidays.add(date1);
        date2 = sdf.parse(dateInString2);
        holidays.add(date2);
    } catch (ParseException e) {
        e.printStackTrace();
    }


    return holidays;
}
private ArrayList getHolidays(){
SimpleDataFormat sdf=新的SimpleDataFormat(“dd-M-yyyy”);
字符串dateInString=“21-07-2015”;
字符串dateInString1=“22-07-2015”;
字符串dateInString2=“23-07-2015”;
ArrayList假日=新建ArrayList();
Date-Date,date1,date2=null;
试一试{
date=sdf.parse(dateInString);
节假日。添加(日期);
date1=sdf.parse(dateInString1);
节假日。添加(日期1);
date2=sdf.parse(dateInString2);
节假日。添加(日期2);
}捕获(解析异常){
e、 printStackTrace();
}
返程假期;
}
如何禁用这些日期单元格不活动(不可选择/可单击)

我正在使用这个图书馆

提前谢谢

调用init()时,它会清除所有选定的旧日期。如果查看init实现,它会清除所有选定的单元格。示例如下所示。希望有帮助

    public void initializeCalendar(){ // or reset Calendar
       Calendar nextYear = Calendar.getInstance();
       nextYear.add(Calendar.YEAR, 1);

       Date today = new Date();

       calendar.init(today, nextYear.getTime())
            .withSelectedDate(today);
    }
调用init()时,它会清除所有选定的旧日期。如果查看init实现,它会清除所有选定的单元格。示例如下所示。希望有帮助

    public void initializeCalendar(){ // or reset Calendar
       Calendar nextYear = Calendar.getInstance();
       nextYear.add(Calendar.YEAR, 1);

       Date today = new Date();

       calendar.init(today, nextYear.getTime())
            .withSelectedDate(today);
    }