Android - 用AnalogClock和DigitalClock实现模拟小时钟

   在Android中有一个名为AnalogClock Widget的时钟对象。此次练习准备在屏幕上方放置模拟时钟,在下方用TextView来模拟电子时钟,将AnalogClock的时间以数字钟形式显示。该练习的难点是:android.os.Handler、java.lang.Thread以及android.os.Message三对象的整合应用,通过产生Thread对象,在进程内同步调用System.currentTimeMillis()取得系统时间,并通过Message对象来通知Handler对象,Handler则扮演联系Activity与Thread之间的桥梁,在收到Message对象后,将时间变量的值显示于TextView中,产生数字时钟的外观与功能。
    第1步:编写布局文件main.xml,分别添加一个AnalogClock、一个DigitalClock和一个TextView,以实现整体布局。
    第2步:模拟时钟的实现不需要额外代码,只需要在UI中添加即可,其自动显示时间。
    具体代码如下所示:
/*定义模拟时钟对象*/
AnalogClock myClock;
/*从XML中获取模拟时钟UI对象*/
myClock=(AnalogClock)findViewById(R.id.Clock)
   第3步:数字时钟的实现也不需要额外代码,只需要在UI中添加即可,其自动显示时间。
   具体代码如下所示:
/*定义数字时钟对象*/
Digitalclock myDigClock;
/*从XML中获取数字时钟UI对象*/
myDigClock=(DigitalClock)findViewById(R.id.DigitalClock01);

使用线程实现的TextView时钟则需要线程ThreadHandler(发送、处理消息)辅助实现。具体代码如下所示:

import android.os.Handler;
import android.os.Message;
public class Clock extends Activity implements Runnable(public Handler myHandler;
@Override
protected void onCreate (Bundle savedInstanceState) {
   
//TODO Auto-generated method stub
super
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值