JTCalendar源码解析

github地址为https://github.com/jonathantribouharet/JTCalendar,基本用法请参考这里。下面列出源码分析的流程图(分析的是2.1.9版本):

各视图的作用,大致说明如下:

        WeekDayView代表日历头视图

        JTCalendarWeekView 日历内容视图中的单元视图

        JTCalendarDayView 日历单元视图每一天的视图

        JTCalendarMenuView 日历的标题视图

        JTHorizontalCalendarView日历内容视图

        JTCalendarPageView日历内容视图中的具体页面

        JTCalendarWeekDayView日历具体页面中的头视图

        JTCalendarDelegateManager是对delegate的再次封装,使得每次使用时都有默认值,不至于用户没有实现某个代理就造成崩溃

        JTDateHelper里面是日历的操作函数

        JTCalendarScrollManager这个代理是对contentView和menuView互相同步操作的封装,其实通过Manager也是可以做到的,但是我想想这样封装还是有好处的,即降低了contentView和menuView之间的耦合性

各视图的流程图如下:

1、BasicViewController流程图

JTCalendar源码解析_第1张图片

2、JTCalendarManager流程图

JTCalendar源码解析_第2张图片
JTCalendar源码解析_第3张图片
JTCalendar源码解析_第4张图片

3、JTCalendarMenuView流程图

JTCalendar源码解析_第5张图片
JTCalendar源码解析_第6张图片
JTCalendar源码解析_第7张图片
JTCalendar源码解析_第8张图片

4、JTHorizontalCalendarView流程图

JTCalendar源码解析_第9张图片
JTCalendar源码解析_第10张图片
JTCalendar源码解析_第11张图片
JTCalendar源码解析_第12张图片

5、JTVerticalCalendarView流程图

JTCalendar源码解析_第13张图片
JTCalendar源码解析_第14张图片

6、JTCalendarPageView流程图

JTCalendar源码解析_第15张图片
JTCalendar源码解析_第16张图片
JTCalendar源码解析_第17张图片

7、JTCalendarWeekDayView流程图

JTCalendar源码解析_第18张图片
JTCalendar源码解析_第19张图片
JTCalendar源码解析_第20张图片

8、JTCalendarWeekView流程图

JTCalendar源码解析_第21张图片
JTCalendar源码解析_第22张图片
JTCalendar源码解析_第23张图片

9、JTCalendarDayView流程图

JTCalendar源码解析_第24张图片
JTCalendar源码解析_第25张图片
JTCalendar源码解析_第26张图片

10、JTCalendarScrollManager流程图

JTCalendar源码解析_第27张图片

你可能感兴趣的:(JTCalendar源码解析)