前言:决定开始学习 android 平台下的软件开发,以日历作为实践项目,进行一周后,基本完成。 为了总结及笔记,并给有需要的朋友借鉴,开始整理本教程。
开始之前:
在编写程序之前,需要进行项目设计,因为是练习项目,主要是确定软件 ui 界面,这是已经完成的屏幕截图:
对这个画面,进一步作分解:
这里总共分解为三个 view 文件:
1:activity_main.xml
作为启动的主画面,新建项目时,首先生成。
2:view_calendar_table.xml
定义月历视图,头部固定,其它行由代码动态添加。
3:view_calendar_day_cell.xml
定义每一天的视图,主要由三个元素组成:公历日期,农历信息,是否是今天的标记图像。
相应的代码类定义:
因为要实现左右滑屏,这里采用的方案是使用 viewpager。calendarpageradapter 为 viewpager 提供多帧管理,我们设计的目标是显示公历 1901 - 2100 年区间的月历,相应的帧画面有 (2100 - 1900) * 12 幅帧画面,如果多创建出来,将占用非常大的内存资源。将由 viewpager 来管理,由它决定某一帧何时创建,何时销毁,以节约内存资源。更多信息请参考:http://developer.android.com/reference/android/support/v4/view/viewpager.html