应用很早就上线了,欢迎大家下载使用:http://itunes.apple.com/app/id1206687109
源码已经公开,大家可以去https://github.com/Inspirelife96/ILDiligence下载。 喜欢的话Fork或者给个Star,非常感谢。
下面是这一系列的全部帖子:
想法和原型
勤之时 - 架构与工程组织结构
勤之时 - 数据持久层的实现
勤之时 - 网络层的实现
勤之时 - 业务逻辑层
勤之时 - Info.plist的改动
勤之时 - 表示层(一)
勤之时 - 表示层(二)
勤之时 - 表示层(三)
勤之时 - 表示层(四)
勤之时 - 表示层(五)
这一节讨论统计的部分,右上角的按钮对应的功能。
功能描述如下:
【今日统计】 View Controller
- 上部为今日任务统计的饼状图
- 中部为今日专注文字及日期
- 底部为专注次数,小时和程度统计
- 左上角为【关闭】按钮
- 右上角为【历史统计】按钮,点击跳转到历史统计页面。
【历史数据 - 柱状图】View Controller
- 上部为专注总数,小时数,以及天数的统计信息。
- 中部为最近7天或30天的专注统计柱状图。
- 底部为最佳专注信息。
- 左上角为【返回】按钮,点击返回【今日专注】页面
- 右上角为【历史专注 - 饼状图】按钮,点击切换为饼状图。
【历史数据 - 饼状图】View Controllers
- 上部为专注总数,小时数,以及天数的统计信息。
- 中部为专注统计饼状图。
- 底部为最佳任务信息。
- 左上角为【返回】按钮,点击返回【今日专注】页面
- 右上角为【历史专注 - 柱状图】按钮,点击切换为柱状图。
MVC设计考虑:
-
Controller:
- ILDStatisticsTodayViewController:今日统计。
- ILDStatisticsHistoryViewController:历史统计,饼状图和柱状图共用一个VC,只不过视图不一样,点击按钮时切换视图。
-
Model:
- 在ILDBusinessLogicLayer中我们定义了ILDDiligenceDataCenter,可以通过这个类,来获取Today和History的统计信息,对应的Model分别为ILDStatisticsTodayModel和ILDStatisticsHistoryModel。
- 在展示层,我们添加了ILDStatisticsTodayModel和ILDStatisticsHistoryModel对应的Category,来基于Model生成View需要展示的数据。
-
View:
- 对一些通用的View模块进行抽取,然后依据模块分别开发View。
详细编码:
不在赘述了,献上代码:https://github.com/Inspirelife96/ILDiligence
算是有点虎头蛇尾吧,最后的一部分文章和代码总因为种种原因(其实就是懒惰)耽搁了。 现在算是完结这个系列。