在周视图下,跨月份或者跨年的时候农历节日判断错误的BUG。android系统:4.0.4
文件:packages/apps/Calendar/src/com/android/calendar/DayView.java
+ //add xhh
+ private boolean isjumpMonth=false;
方法: private void drawDayHeader(String dayStr, int day, int cell, Canvas canvas, Paint p);
在里面修改2处:
①
if (dateNum > mMonthLength) {
dateNum -= mMonthLength;
+ isjumpMonth=true;
}
②
- if (dateNum > mMonthLength) {
- month = month + 1;
+ //modify xhh fix 13693
+ // if (dateNum > mMonthLength) {
+ if (isjumpMonth) {
+ isjumpMonth=false;
+ month = month + 1;
BUG原因:由于在最开始当日起大于31的时候(即跨月)处理了日期,而在月份和年进位的时候条件判断错误,dateNum > mMonthLength必定为false,导致出现6月1号农历显示为劳动节的BUG。