嗨,我正在使用 Caldroid 库在我的习惯跟踪器应用程序中自定义日历视图,并且有两个哈希图代表习惯的成功和失败天数successMap
。failureMap
我为成功的日子设置了可绘制的绿色圆形背景,为失败的日子设置了可绘制的红色圆形背景,但只显示了其中一个,稍后在代码中编写。这是设置日历的方法:
private void setCalendar(){
Map<Date, Drawable> successMap = new HashMap<>();
Map<Date, Drawable> failureMap = new HashMap<>();
//For success days
for(int i=0; i<successDays.size(); i++){
successMap.put(successDays.get(i), getResources().getDrawable(R.drawable.green_circular));
}
//For failure days
for(int i=0; i<failureDays.size(); i++){
failureMap.put(failureDays.get(i), getResources().getDrawable(R.drawable.red_circular));
}
caldroidFragment.setBackgroundDrawableForDates(successMap);
caldroidFragment.setBackgroundDrawableForDates(failureMap);
caldroidFragment.refreshView();
}
在此仅显示稍后编写的日期,例如此处仅显示失败的日期。我已经检查了这些数组列表和映射值,它们很好。那么我该如何解决这个问题?