最近使用从网上下载的一个时间插件DatePickerCombo,但是星期和日期不匹配,原来是DatePicker类中computeOffset方法有误,

DatePickerCombo时间插件修改_第1张图片

原来代码如下:

private int computeOffset(int day) {
switch (day) {
case Calendar.MONDAY :
return 1;
case Calendar.TUESDAY :
return 2;
case Calendar.WEDNESDAY :
return 3;
case Calendar.THURSDAY :
return 4;
case Calendar.FRIDAY :
return 5;
case Calendar.SATURDAY :
return 6;
case Calendar.SUNDAY :
return 7;
}
return -1;
}

 一周的第一天应该是周日所以修改代码如下:

private int computeOffset(int day) {
switch (day) {
case Calendar.MONDAY :
return 2;
case Calendar.TUESDAY :
return 3;
case Calendar.WEDNESDAY :
return 4;
case Calendar.THURSDAY :
return 5;
case Calendar.FRIDAY :
return 6;
case Calendar.SATURDAY :
return 7;
case Calendar.SUNDAY :
return 1;
}
return -1;
}

修改后:星期和日期匹配了!

DatePickerCombo时间插件修改_第2张图片