没有合适的资源?快使用搜索试试~ 我知道了~
Android日历完整实现
4星 · 超过85%的资源 需积分: 3 79 下载量 176 浏览量
2013-08-04
19:56:44
上传
评论 1
收藏 261KB DOC 举报
温馨提示
试读
22页
摘要: Android 作为目前较为流行的智能手机操作系统已成为大多数人的首选。在美国乃至世界 的很多地方的出货量已经超越Iphone, 成为世界上最大智能手机操作系统。因此, 世界各地的程 序员都跃跃欲试地想学习Android 的开发, 并希望从中捞得属于自己的第一桶金。在此给出一个 基于Android 的日历系统的完整实现过程。 关键词: Android; 日历; 绘画; 农历; 记录; 提醒
资源推荐
资源详情
资源评论
实用第一智慧密集
实现基于的日历系统
摘要: 作为目前较为流行的智能手机操作系统已成为大多数人的首选。
在美国乃至世界
的很多地方的出货量已经超越 , 成为世界上最大智能手机操作系统。因此,
世界各地的程
序员都跃跃欲试地想学习 的开发, 并希望从中捞得属于自己的第一桶金。
在此给出一个
基于 的日历系统的完整实现过程。
关键词: ; 日历; 绘画; 农历; 记录; 提醒
1 引言
要实现的日历除了常规的日历功能外, 还可以显示与当前
日期相关的信息, 如当前日期的农历日期、天干地支、节日等
信息。下面先看看日历的绚丽界面, 如图 、图 所示。
主要功能
2 绘画基础
由于实现的日历系统要涉及到大量的 绘图技术,
因此, 要简单介绍 的绘图技术。
绘制图形通常在 或其子类的 方
法中进行。该方法的定义如下:
其中 对象提供了大量用于绘图的方法, 这些方法
主要包括绘制像素点、直线、圆形、弧、文本, 这些都是组成
复杂图形的基本元素。如果要画更复杂的图形, 可以采用组合
这些图形基本元素的方式来完成。例如, 可以采用画 条直线
的方式来画三角形。下面来看一下绘制图形基本元素的方法。
2.1 绘制像素点
!"#$"%$!
&&画一个像素点
!"'($)$$
!&&画多个像素点
!"'($!
&&画多个像素点
参数的含义如下:
() #: 像素点的横坐标。
() %: 像素点的纵坐标。
() : 描述像素点属性的 !对象。可设置像素点
的大小、颜色等属性。绘制其他图形元素的 !对象与绘制
像素点的 !对象的含义相同。在绘制具体的图形元素时可
根据实际的情况设置 !对象。
(*) : !方法可一次性画多个像素点。参数
表示多个像素点的坐标。该数组元素必须是偶数个, 两个一组
为一个像素点的坐标。
() ): !方法可以取 数组中的一部分连
续元素作为像素点的坐标, 因此, 需要通过 )参数来指定
取得数组中连续元素的第一个元素的位置, 也就是元素偏移
量, 从 开始。例如, 要从第 个元素开始取数组元素, 那么
)参数值就是 。
(+) : 要获得的数组元素个数, 必须为偶数
(两个数组元素为一个像素点的坐标)。
要注意的是, )可以从任意一个元素开始取值, 例如,
)可以为 , 然后 为 *。
2.2 绘制直线
,"-$".$"-$
".$!&&画一条直线
,"'($)$$
!&&画多条直线
,"'($!
&&画多条直线
参数的含义如下:
() -: 直线开始端点的横坐标。
() .: 直线开始端点的纵坐标。
() -: 直线结束端点的横坐标。
(*) .: 直线结束端点的纵坐标。
() : 绘制多条直线时的端点坐标集合。*个数组元素
(两个为开始端点的坐标, 两个为结束端点的坐标) 为 组,
表示一条直线。例如, 画两条直线, 数组就应该有 /个元
素。前 *个数组元素为第 条直线两个端点的坐标, 后 *个数
组元素为第 条直线的两个端点的坐标。
(+) ): 数组中元素的偏移量。
(0) : 取得 数组中元素的个数。该参数值需为 *
的整数倍。
2.3 绘制圆形
"#$"%$"$!
参数的含义如下:
() #: 圆心的横坐标。
() %: 圆心的纵坐标。
() : 圆的半径。
2.4 绘制弧
12 $"3 $"
3 $ $!
参数的含义如下:
() : 弧的外切矩形的坐标。需要设置该矩形的左上
角和右下角的坐标, 也就是 4、 、 3和
5。
() 3 : 弧的起始角度。
() 3 : 弧的结束角度。如果 3 63
的值大于等于 +, 画的就是一个圆或椭圆(如
果 指定的坐标画出来的是长方形, 画的就是椭圆)。
(*) : 如果该参数值为 , 在画弧时弧的两个端
点会连接圆心。如果该参数值为 4 , 则只会画弧。效果如图
所示。前两个弧未设置填充状态, 后两个弧设置了填充状态。
2.5 绘制文本
&&绘制 #指定的文本
7#83#$"#$"%$!
&&绘制 #指定的文本。文本中的每一个字符的起始坐标由
&&数组中的值决定。
!7#83#$"'($!
&&绘制 #指定的文本。#中的每一个字符的起始坐标由
&&数组中的值决定。并且可以选择 #中的某一段
&&连续的字符绘制
!7#'(#$#$$"
'($!
参数的含义如下:
#: 7#方法中的 #参数表示要绘制的文本。
!7#方法中的 #虽然也表示要绘制的文本, 但每一
个字符的坐标需要单独指定。如果未指定某个字符的坐标, 系
统会抛出异常。
#: 绘制文本的起始点的横坐标。
%: 绘制文本的起始点的纵坐标。
*#: 选定的字符集合在 #数组中的索引。
: 选定的字符集中字符个数。
3 绘制日历的框架
从图 可以看出, 日历的上部是 行文字, 显示了当前日
期的相关信息。下面来看看如何布局显示这些文字的组件。
在日历主界面的上半部需要放置 *个组件, 个 53
组件和 个 7#组件。其中 53组件用于
显示左上角的图像。个 7#组件用于显示当前日期的信
息。由于目前还没有当前日期的信息。因此, 这 个 7#
组件暂时设置了固定的信息。
下面开始在 5#5 文件中设置这 *个组件。在修改
5#5 文件的内容之前, 先复制一个 3文件, 作
为日历的 3(修改 94#5 文件中的应用程序图
标)。建立一个 工程, 并编写 5#5 文件。
:;#5 <==3<=46/=;>
:,,%#5 ?<=?&&5
5&@&&=
?<= =? %A<=
B A=
? %A3<=B A=?@3<=
C & A@3=>:D66?@3<=
C &@3=66>
:1 ,%?<=CE& F=?
%A<=B A=
? %A3<=0=>
:53?<=CE&,3=?
<=C & A@=
? %A<=C5& 3AG=?
%A3<=C5& 3AG=
? %A53<=C5&53=&>
:,,%? %A<=B A=
? %A3<=A=?
%A13H4<=C&,3=
? %A537<=C5&53=
?<= =>
:7#?<=CE&93=?
%A<=B A=
? %A3<=A=
?# <=C &#A =&>
:7#?<=CE&93=
? %A<=B A=
? %A3<=A=
?# <=C &#A =&>
:7#?<=CE&93=?
%A<=B A=
? %A3<=A=
?# <=C &#A =&>
:&,,%>
:&1 ,%>
剩余21页未读,继续阅读
car-java
- 粉丝: 73
- 资源: 706
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页