2017-03-03 17 views
0

我在装饰器中的自定义日历有问题,我试图禁用特定的日期,我有字符串ArrayList格式为“05/03/2017”的具体日期,我想让这些在数组列表中的日期禁用在customCalendar中创建具体的日期禁用android

我想这个代码,但它不能正常工作

String d1="05/03/2017"; 
String d2="08/03/2017"; 
String d3="12/03/2017"; 

ArrayList<String> bookDates = new ArrayList<>(); 
bookDates.add(d1); 
bookDates.add(d2); 
bookDates.add(d3); 

在这个类中我犯了循环,让日期,数组列表内禁用

private class DisabledColorDecorator implements DayDecorator { 
    @Override 
    public void decorate(DayView dayView) { 

     SimpleDateFormat curFormater = new SimpleDateFormat("dd/MM/yyyy"); 

     if (CalendarUtils.isPastDay(dayView.getDate())) { 
      int color = Color.parseColor("#a9afb9"); 
      dayView.setBackgroundColor(color); 
     } 


     for (int i =0; i<bookDates.size();i++) { 
      try { 
       if (curFormater.parse(bookDates.get(i))== dayView.getDate())  { 
        int color = Color.parseColor("#a9afb9"); 
        dayView.setBackgroundColor(color); 
       } 
      } catch (ParseException e) { 
       e.printStackTrace(); 
      } 
     } 

    } 
} 

我做错了什么,或者如果有什么办法可以禁用特定日期? 如果有人知道,请帮助我,我搜索了很多,没能找到解决办法

预先感谢您

回答

0

我回答我的问题,所以我离开了这个代码,并使用另一个名为库caldroid它的自定义日历。它有助于使所选择的日期,并轻松地禁用日期,还可以更改日期和一切的颜色..

如果有人需要了解它,使用它,你可以从这个链接 roomorama/Caldroid

发现希望这可以帮助别人