效果显示图如下
定义一个Activity
package cn.mw.com;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.AnalogClock;
import android.widget.DigitalClock;
import android.widget.TextView;
public class EX02_01Activity extends Activity {
// 声明两个widget对象
private static AnalogClock ac;
private DigitalClock dc;
private TextView mTextView;
// 声明一常数作为判别信息用
protected static final int GUINOTIFIER = 0x1234;
// 声明与时间相关的变量
public Calendar mCalendar;
public int mMinutes;
public int mHour;
private int msecond;
// 声明关键 Handler 与Thread 变量
public Handler mHandler;
private Thread mClockThread;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mTextView = (TextView) findViewById(R.id.tv1);
ac = (AnalogClock) findViewById(R.id.anclock);
dc = (DigitalClock) findViewById(R.id.digitalclock01);
mHandler = new Handler() {
public void handleMessage(Message msg) {
// 这里是处理信息的方法
switch (msg.what) {
case EX02_01Activity.GUINOTIFIER:
// 在这里处理TextView对象show时间事件
mTextView.setText(mHour + " : " + mMinutes);
break;
}
super.handleMessage(msg);
}
};
/*
* 通过进程来持续取得系统时间
*/mClockThread = new LooperThread();
mClockThread.start();
}
// 改写一个Thread Class 用来持续取得系统时间
class LooperThread extends Thread {
public void run() {
super.run();
try {
do {
// 取得系统时间
long time = System.currentTimeMillis();
/* 通过Calendar 对象来取得小时与分钟 */
final Calendar mCalendar = Calendar.getInstance();
mCalendar.setTimeInMillis(time);
mHour = mCalendar.get(Calendar.HOUR);
mMinutes = mCalendar.get(Calendar.MINUTE);
msecond = mCalendar.get(Calendar.MINUTE);
// 让进程休息一秒
Thread.sleep(1000);
Message m = new Message();
m.what = EX02_01Activity.GUINOTIFIER;
EX02_01Activity.this.mHandler.sendMessage(m);
} while (EX02_01Activity.LooperThread.interrupted() == false);
// 当系统发出中断信息后停止本次循环
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/tv1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<AnalogClock
android:id="@+id/anclock"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<DigitalClock
android:id="@+id/digitalclock01"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
相关推荐
与系统时间严格同步的手表 与系统时间严格同步的手表 与系统时间严格同步的手表与系统时间严格同步的手表
一个js的手表显示时间,显示时间+手表时间
编写一个jsp程序实现手表的功能,显示当前的时间并且自动刷新时间
今天分享一款利用CSS3实现的手表样式倒计时动画代码,有4种不同颜色主题皮肤可供选择,界面非常美观。倒计时前先拖动小圆设置开始时间,然后点击开始按钮进行倒计时。
提取自三星手表,可以在其他Android智能手表上通过adb安装(注意是拥有基本功能Android系统,可以运行Android程序的智能表),即可在手表上享用浏览器功能浏览网页,该应用专门为手表适配,采用chrome内核,没有过于...
每隔一段时间测试自己手表每天的误差。一般来说,新表都是快的;一来时调校方便,快了1分钟后把表停止后等待1分钟即可,慢的话就需要转动对齐指针了。二来是为了以后的使用,正常使用手表是会越走越慢的,因为内部的...
安卓手表adb实用工具箱是一个强大的Android手表调试工具,可以帮助用户快速调试机器并解决常见问题。该软件界面设计简单易懂,功能丰富,是安卓手表用户必备的工具之一。它可以让用户更方便地调试和管理手表,功能...
包括日历,日历生成器,日期自由选择,...时钟1,时钟2,时钟家在背景上,时钟显示在指针指定位置,手表,鼠标时钟,鼠标在日历中的多种用途,随时间变化提示,外圈日期内圈时间,万年历1、万年历2、万年历3、万年历4
verilog编写的数字手表。 开发平台: Nexy2开发板/ISE开发平台/外设:LCD屏幕,扬声器,电位器 数字手表功能如下: 1.时间显示: LED屏第一行显示当前时间,格式为 小时:分钟:秒 2.时间设置: 通过两个按钮hset和...
根据时间走动的flash手表,带有源代码
一款基于css3 transform属性绘制的瑞士手表ui动画特效。注:只是手表样式,时间并不准确。
智能手表程序
1、上电后在显示屏上先显示“智能电子手表”5秒,然后自动进入工作界面; 2、工作界面可以显示各类信息,包括实时温度、当前时间(年月日、时分秒)等; 3、一个按键作为“设置”键,按下后有提示:“是否进入设置...
手表演示动画,手表,时钟动画ppt模板下载。
如果您自己有手表其它型号类似链接中的“刷机包”,并且有root的手段,具有一定专业知识,也可以尝试其它机型,但由于其它机型配置限制,一般刷成功意义也不大 【操作原理】将手表降级,利用低版本小天才手表没有太...
电击手环就是可以产生静电脉冲的智能手环,它主要的功能就是早起闹钟,以及电击防疲劳,另外有一些人用电击手表来戒除坏习惯(心理学领域的电击厌恶疗法),它可以产生将近500伏的静电脉冲,目前市面上电击手表主要...
这是一款很好看的CSS3苹果iwatch手表样式app脉搏跟踪器动画特效,特别喜欢手表中间的心形跳动动画效果。
MT6250手表破解固件,可以破解网上销售几块钱的儿童电话手表换卡不能打电话的限制,用MT软件通过USB方式刷入即可
智能手表源码,嵌入式平台智能手表,WTM32智能手表开发源码,包括stm32软件和硬件的源码及相关文档。
STM32103手表例程 OLED显示日期时间 及当前温度值