public static int getFirstWeekOfMonth(int year, int month) {
Calendar calendar = Calendar.getInstance();
calendar.set(year, month, 1);
return calendar.get(Calendar.DAY_OF_WEEK) - 1;
}
for (int i = 0; i < week; i++) {
ld = 上个月天数 - week + 1 + i;
}
for (int i = 0; i < 7 * 显示的行数 - 当月天数 - week; i++) {
nd = i + 1;
}
public Object instantiateItem(ViewGroup container, int position) {
return instantiateItem((View) container, position);
}
public static int[] positionToDate(int position, int startY, int startM) {
int year = position / 12 + startY;
int month = position % 12 + startM;
if (month > 12) {
month = month % 12;
year = year + 1;
}
return new int[]{year, month};
}
public Object instantiateItem(ViewGroup container, int position) {
MonthView view = new MonthView(container.getContext());
//根据position计算对应年、月
int[] date = CalendarUtil.positionToDate(position, dateStart[0], dateStart[1]);
view.setDateList(CalendarUtil.getMonthDate(date[0], date[1]), SolarUtil.getMonthDays(date[0], date[1]));
container.addView(view);
return view;
}
addOnPageChangeListener(new SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
}
});
public void setLastChooseDate(int day, boolean flag) {
HashSet<Integer> days = chooseDate.get(currentPosition);
if (flag) {
if (days == null) {
days = new HashSet<>();
chooseDate.put(currentPosition, days);
}
days.add(day);
} else {
days.remove(day);
}
}
public static int dateToPosition(int year, int month, int startY, int startM) {
return (year - startY) * 12 + month - startM;
}
<declare-styleable name="CalendarView">
<!--是否多选-->
<attr name="multi_choose" format="boolean" />
<!--是否显示农历-->
<attr name="show_lunar" format="boolean" />
<!--是否显示上月和下月-->
<attr name="show_last_next" format="boolean" />
<!--是否显示节假日-->
<attr name="show_holiday" format="boolean" />
<!--是否显示节气-->
<attr name="show_term" format="boolean" />
<!--开始日期(1990.1)-->
<attr name="date_start" format="string" />
<!--结束日期(2020.12)-->
<attr name="date_end" format="string" />
<!--默认展示、选中的日期(2016.10.1)-->
<attr name="date_init" format="string" />
<!--是否禁用默认选中日期前的所有日期-->
<attr name="disable_before" format="boolean" />
<!--阳历的日期颜色-->
<attr name="color_solar" format="color" />
<!--阳历的日期尺寸-->
<attr name="size_solar" format="integer" />
<!--农历的日期颜色-->
<attr name="color_lunar" format="color" />
<!--农历的日期尺寸-->
<attr name="size_lunar" format="integer" />
<!--节日文字颜色-->
<attr name="color_holiday" format="color" />
<!--选中的日期文字颜色-->
<attr name="color_choose" format="color" />
<!--选中的日期背景(图片)-->
<attr name="day_bg" format="reference" />
<!--单选时切换月份,是否选中上次的日期-->
<attr name="switch_choose" format="boolean" />
</declare-styleable>
calendarView.setOnCalendarViewAdapter(R.layout.item_layout, new CalendarViewAdapter() {
@Override
public TextView[] convertView(View view, DateBean date) {
TextView solarDay = (TextView) view.findViewById(R.id.solar_day);
TextView lunarDay = (TextView) view.findViewById(R.id.lunar_day);
return new TextView[]{solarDay, lunarDay};
}
});
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有