Skip to content

日历Api

yannecer edited this page Apr 1, 2020 · 24 revisions

日历Api

折叠日历拥有月日历和周日历的除背景之外的全部Api,
折叠日历中提供了设置月日利和周日历的Api

月日历MonthCalendar、周日历WeekCalendar

//设置选中模式  单选、多选 
void setCheckMode(CheckModel checkModel);

//多选个数和模式  
void setMultipleCount(int multipleCount, MultipleCountModel multipleCountModel);

// 默认选中时,是否翻页选中第一个,只在checkModel==SINGLE_DEFAULT_CHECKED有效
void setDefaultCheckedFirstDate(boolean isDefaultCheckedFirstDate);

//跳转日期 formatDate 必须为 yyyy-MM-dd 的字符串
void jumpDate(String formatDate);

//跳转日期 
jumpDate(int year, int month, int day);

//上一页 上一周 上一月
void toLastPager();

//下一页 下一周 下一月
void toNextPager();

//回到今天
void toToday();

//设置自定义绘制类 实现CalendarPainter接口
void setCalendarPainter(CalendarPainter calendarPainter);

//设置自定义适配器 继承CalendarAdapter
void setCalendarAdapter(CalendarAdapter calendarAdapter);

//刷新日历 刷新viewpager中存在的view
void notifyCalendar();

//设置初始化日期
void setInitializeDate(String formatInitializeDate);

//设置初始化日期和可用区间  必须为 yyyy-MM-dd 的字符串
void setDateInterval(String startFormatDate, String endFormatDate, String formatInitializeDate);

//设置可用区间 必须为 yyyy-MM-dd 的字符串
void setDateInterval(String startFormatDate, String endFormatDate);

//单选日期变化监听
void setOnCalendarChangedListener(OnCalendarChangedListener onCalendarChangedListener);

//多选日期变化监听
void setOnCalendarMultipleChangedListener(OnCalendarMultipleChangedListener onCalendarMultipleChangedListener);

//设置点击了不可用日期监听
void setOnClickDisableDateListener(OnClickDisableDateListener onClickDisableDateListener);

//设置日历上下月能否点击
void setLastNextMonthClickEnable(boolean enable);

//实现了CalendarBackground接口的背景
void setCalendarBackground(CalendarBackground calendarBackground) throws IllegalAccessException;

//多选模式下,初始化时选中的日期
void setCheckedDates(List<String> dateList);

//设置日历是否可以左右滑动
void setScrollEnable(boolean scrollEnable);

//获取全部选中的日期集合
List<LocalDate> getTotalCheckedDateList();

// 获取当前页面选中的日期集合
List<LocalDate> getCurrPagerCheckDateList();

//获取当前页面的日期集合 如果是月周折叠日历 周状态下获取的是一周的数据,月状态下获取的一月的数据
List<LocalDate> getCurrPagerDateList();

折叠日历(Miui9Calendar、Miui10Calendar、EmuiCalendar)

//回到周状态 只能从月->周
void toWeek();

//回到月状态 可以从周回到月或者从拉伸回到周
void toMonth();

//回到拉伸状态 只能从月->拉伸
void toStretch();

//设置是否滑动到周位置固定
void setWeekHoldEnable(boolean isWeekHoldEnable);

//设置月状态下 是否可以下拉拉伸
void setStretchCalendarEnable(boolean isMonthStretchEnable);

// 日历月周状态变化回调
void setOnCalendarStateChangedListener(OnCalendarStateChangedListener onCalendarStateChangedListener);

//日历 月 周 拉伸 状态滑动监听
void setOnCalendarScrollingListener(OnCalendarScrollingListener onCalendarScrollingListener);

//设置日历状态
setCalendarState(CalendarState calendarState);

//月周折叠日历设置月日历背景
void setMonthCalendarBackground(CalendarBackground calendarBackground);

//月周折叠日历设置周日历背景
void setWeekCalendarBackground(CalendarBackground calendarBackground);