现在要做一个功能,如上图,点击‘月’的时候,显示一个月的日期,如果当天有事情的话,该天的字体显示成红色!这个月中有事情的天数,放在一个数组中。如:第1天和第10天有事,则data[]={1,10}。整个这块是用个gridview做出来的,现在就是不晓得如何让字体变红???急死人了!!高手帮帮忙啊....
下面是我的代码:
Map<String, Object> ite;
List<Map<String, Object>> sDay;
//点击月时的日历显示
public void monthCalendar(){
//星期
List<Map<String, Object>> items = new ArrayList<Map<String,Object>>();
for (int i = 0; i < 7; i++) {
Map<String, Object> item = new HashMap<String, Object>();
item.put("textItem", week[i]);
items.add(item);
}
SimpleAdapter adapter=new SimpleAdapter(this, items, R.layout.grid_item, new String[]{"textItem"},new int []{R.id.text_item});
llweeks.setAdapter(adapter);
//一个月中的天
sDay = new ArrayList<Map<String,Object>>();
setCalender(year,month);
SimpleAdapter adapt=new SimpleAdapter(this, sDay, R.layout.grid_item, new String []{"textItem"},new int []{R.id.text_item});
lldays.setAdapter(adapt);
}
public void setCalender(int year,int month)
{
calendar.set(year,month-1,1);
weeknum=calendar.get(Calendar.DAY_OF_WEEK)-1;
if(weeknum>0){
for(int i=0;i<weeknum;i++){
ite = new HashMap<String, Object>();
ite.put("textItem", "");
sDay.add(ite);
}
}
if(month==1||month==3||month==5||month==7
||month==8||month==10||month==12)
{
monthday=31;
arrangenum(weeknum,31);
}
else if(month==4||month==6||month==9||month==11)
{
monthday=30;
arrangenum(weeknum,30);
}
else if(month==2)
{
if((year%4==0&&year%100!=0)||(year%400==0))
{
monthday=29;
arrangenum(weeknum,29);
}
else
{
monthday=28;
arrangenum(weeknum,28);
}
}
}
public void arrangenum(int weeknum,int monthnum)
{
for(int i=weeknum,n=1;i<weeknum+monthnum;i++)
{
//showDays[i].setText(""+n);
ite = new HashMap<String, Object>();
ite.put("textItem", n+"");
n++;
sDay.add(ite);
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货