我正在开发一个显示hijri日历的伊斯兰应用程序,并且还应用添加特定日期,时间,事件标题和该日期主题的事件,因此我希望在应用程序启动时显示日历,然后显示事件和#39;日期有不同的颜色。
caldroidFragment.setCaldroidListener(new CaldroidListener() {
@SuppressWarnings("deprecation")
@Override
public void onSelectDate(Date date, View view) {
// TODO Auto-generated method stub
// caldroidFragment.setSelectedDates(date, date);
Calendar text=Calendar.getInstance();
text.clear();
// text.set(Calendar.);
int d=(int) date.getDate();
int m=(int) date.getMonth();
int y=(int) date.getYear();
text.set(Calendar.YEAR, y+1900);
text.set(Calendar.MONTH, m);
text.set(Calendar.DATE, d);
hijridate.setText(HijriCalendarDate.getSimpleDate(text, 0));
}
}
答案 0 :(得分:2)
您应该使用caldroid对象的setBackgroundDrawableForDates
方法,并将日期作为键并将Drawable
作为值传递给地图。像这样:
import android.graphics.drawable.ColorDrawable;
final Map<Date, Drawable> backgroundForDateMap = new HashMap<>();
final Calendar c = Calendar.getInstance();
// 1. date
c.set(2016, Calendar.MAY, 1);
backgroundForDateMap.put(c.getTime(), new ColorDrawable(Color.GREEN));
// 2. date
c.set(2016, Calendar.MAY, 2);
backgroundForDateMap.put(c.getTime(), new ColorDrawable(Color.YELLOW));
caldroidFragment.setBackgroundDrawableForDates(backgroundForDateMap);