`
yue_sweet
  • 浏览: 12212 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

android获得系统时间(Handler)

阅读更多
package com.bawei.layout;

import java.util.Calendar;

import android.app.Activity;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.widget.TextView;

public class TimeActivity extends  Activity{
private static final int GUINOTIFIER =1;

//然后定义一些例子 里面需要的属性

public Calendar mCalendar;
// public int mMinutes;
// public int mHour; //小时
private int myear;//年
private int mmonth;//月
private int mday;//天
private int mminute;//分钟
private int mhour;//小时
private int msecond;//秒
private int mweek;//星期
private  Handler mHandler;
private Thread mClockThread;
private TextView mtextview;

protected void onCreate(android.os.Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.time);

mtextview = (TextView) findViewById(R.id.time_textview);
//接着我们通过Handler来接收Thread所传递的信息
   result();
mHandler = new Handler() {
        public void handleMessage(Message msg) {
            switch (msg.what) {
                case TimeActivity.GUINOTIFIER://TestHandler是Activity的类名
                    //得到Handle的通知了 这个时候你可以做相应的操作,本例是使用TextView 来显示时间
                mtextview .setText(myear + "年" + mmonth+"月"+ mday +"日"+mhour +":"+mminute+":"+msecond+"星期"+mweek);
                    break;
            }
            super.handleMessage(msg);
        }
    };
}


//接下来我们自定义一个Thread

class LooperThread extends Thread {
    public void run() {
        super.run();
        try {
            do {
            //每间隔一秒取一次系统 时间
                long time = System.currentTimeMillis();
                final Calendar mCalendar = Calendar.getInstance();
                mCalendar.setTimeInMillis(time);
                  //  取得系统日期:
                    myear = mCalendar.get(Calendar.YEAR);
                        mmonth = mCalendar.get(Calendar.MONTH);
                        mday = mCalendar.get(Calendar.DAY_OF_MONTH);
                  // 取得系统时间:
                          mhour = mCalendar.get(Calendar.HOUR_OF_DAY);
                          mminute = mCalendar.get(Calendar.MINUTE);
                          msecond= mCalendar.get(Calendar.SECOND);
                          mweek = mCalendar.get(Calendar.DAY_OF_WEEK);
                         
               
                Thread.sleep(1000);
                //取得系统时间后发送消息给Handler
                Message m = new Message();
                m.what = GUINOTIFIER;
                mHandler.sendMessage(m);
            } while (!LooperThread.interrupted());//当系统发出终端命令时停止循环
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}
   //最后我们启动线程
public void result(){
   mClockThread = new LooperThread();
   mClockThread.start();
    }

   
}
0
7
分享到:
评论
1 楼 f059074251 2012-08-09  
这个头像很PL,是LZ么。

相关推荐

    深入理解Android:卷I--详细书签版

    第5章讲解了android系统中常用的类,包括sp、wp、refbase、thread等类,同步类,以及java中的handler类和 looper类,掌握这些类的知识后方能在后续的代码分析中做到游刃有余;第6章以mediaserver为切入点,对...

    疯狂Android讲义源码

     2.4.3 日期、时间选择器(DatePicker  和TimePicker)的功能和用法 83  2.4.4 进度条(ProgressBar)的  功能和用法 85  2.4.5 拖动条(SeekBar)的功能和  用法 90  2.4.6 星级评分条(RatingBar)的  ...

    android 面试2

    答:ANR(Application Not Responding):应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作应用程序无响应的对话框 避免ANR:Android应用程序通常运行在一个单独的线程里面,称谓主线程,...

    疯狂Android讲义.part2

    2.4.3 日期、时间选择器(DatePicker 和TimePicker)的功能和用法 83 2.4.4 进度条(ProgressBar)的 功能和用法 85 2.4.5 拖动条(SeekBar)的功能和 用法 90 2.4.6 星级评分条(RatingBar) 的 功能和用法 91 ...

    疯狂Android讲义.part1

    2.4.3 日期、时间选择器(DatePicker 和TimePicker)的功能和用法 83 2.4.4 进度条(ProgressBar)的 功能和用法 85 2.4.5 拖动条(SeekBar)的功能和 用法 90 2.4.6 星级评分条(RatingBar) 的 功能和用法 91 ...

    Android开发资料合集--续

    59、更改系统超时休眠的时间 94 60、更改对话框大小 95 61、json数据格式解析 95 62、两种Toast 97 63、控件抖动的实现 98 64、判断媒体文件类型 99 65、编写使用root权限的应用 102 66、获取所有安装了的App的信息 ...

    Android开发资料合集-World版!

    1、ANDROID文件系统与应用程序架构 7 1.1、ANDROID 文件系统 7 1.2、ANDROID应用程序架构 9 2、ANDROID应用程序结构 11 2.1、ACTIVITY 12 2.1.1、概述 12 2.1.2、Activity的生命周期 15 2.1.3、Activity 的创建 16 ...

    Android 开发技巧

    1、ANDROID文件系统与应用程序架构 7 1.1、ANDROID 文件系统 7 1.2、ANDROID应用程序架构 9 2、ANDROID应用程序结构 11 2.1、ACTIVITY 12 2.1.1、概述 12 2.1.2、Activity的生命周期 15 2.1.3、Activity 的创建 16 ...

    Andriod 服务Servive详解

     8.3.1 计时器:Chronometer  8.3.2 预约时间Handler  8.3.4 在线程中更新GUI组件  8.3.5 全局定时器AlarmManager(1)  8.3.5 全局定时器AlarmManager(2)  8.3.5 全局定时器AlarmManager(3)  ...

Global site tag (gtag.js) - Google Analytics