`
yue_sweet
  • 浏览: 12771 次
  • 性别: 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时间显示源代码.rar

    在Android系统中,时间显示...对于Android新手来说,这是一个很好的起点,可以帮助他们了解Android应用的基本结构,以及如何与系统时间交互。通过学习和实践,开发者可以逐步掌握更复杂的Android时间管理和UI更新技巧。

    Node.js-用Handler封装的Bus方便使用

    标题中提到的"Node.js-用Handler封装的Bus方便使用"是指在Node.js环境中,利用类似事件处理的模式来设计一个总线系统。Node.js以其异步非阻塞I/O特性而著名,事件驱动是其核心编程模型之一。通过Handler封装的Bus,...

    Android系统应用开发实战详解

    在Android系统应用开发实战详解这本书中,作者深入浅出地探讨了如何构建高效、功能丰富的Android应用程序。本书的代码库提供了实例源代码,方便读者在实际操作中学习和理解相关概念,确保每个章节的知识点都能得到...

    Android动态显示当前年月日时分秒系统时间(示例代码)

    Android 动态显示当前年月日时分秒系统时间示例代码 Android 中实现动态显示当前年月日时分秒系统时间是很多开发者需要的功能。下面将介绍如何使用 Android 动态显示当前年月日时分秒系统时间的示例代码。 首先,...

    基于Android的总量优先预算算法在订餐系统的使用.pdf

    通过总量优先预算算法,我们可以根据订单的优先级和执行时间来分配系统资源,确保高优先级的订单获得更多的系统资源,以提高订单处理效率和客户满意度。 在Android平台上,实现总量优先预算算法需要使用Java编程...

    贪食蛇游戏的Android嵌入式系统设计.pdf

    设计者需要考虑不同模式下的游戏规则,如限时模式下,玩家需要在规定时间内尽可能获得高分;自由模式下,游戏无时间限制,玩家可以随意玩;团队模式则可能涉及多条蛇的合作或竞争。 其次,游戏系统结构设计是构建...

    Android应用源码之hotel宾馆系统.rar

    在本压缩包“Android应用源码之hotel宾馆系统.rar”中,我们得到了一个完整的Android应用程序源代码,用于实现一个酒店管理系统。源码是学习和理解Android应用开发的宝贵资源,尤其是对于那些想要深入研究Android...

    最新最全的Android开发笔记

    Android的通知系统也得到了详尽的解释,包括如何创建通知,设置通知优先级,以及利用Notification Channels实现Oreo及以上版本的兼容性。 最后,笔记还涵盖了Android的权限管理,特别是针对Android 6.0及以上版本的...

    android源码随机数

    综上所述,Android源码中的随机数生成涉及`Random`和`SecureRandom`类的使用,以及如何结合系统时间和定时任务来控制生成频率。在实际开发中,应根据具体需求选择合适的方法,并确保在处理敏感数据时使用足够安全的...

    android秒表

    最后,考虑到Android系统的限制,需要确保秒表在长时间运行时的性能和稳定性,避免过度消耗电池。可能需要考虑使用AlarmManager或Service来在后台运行秒表,同时提供适当的通知让用户知道秒表仍在计时。 总之,设计...

    Android面试总结精华

    **解答**: 实时操作系统(RTOS)是指那些能够确保关键任务在预定时间内得到响应的操作系统。这类操作系统的特点在于其能够满足特定的时间约束,这对于许多需要高可靠性和时间敏感性的应用场景至关重要。而Android...

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

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

    深入解析Android虚拟机(钟世礼)高清版

    通过阅读《深入解析Android虚拟机》,开发者能够获得对Android系统底层运作的深刻理解,从而编写出更高效、更稳定的应用程序。无论是对初学者还是有经验的开发者来说,这本书都是提升Android技能不可或缺的参考资料...

    Android开发实战经典(PDF)

    在Android开发中,异步处理是非常重要的一环,因为长时间的主线程操作会导致应用无响应。AsyncTask、IntentService、Handler/Looper和最近的Coroutines库都是处理异步任务的有效工具。 除此之外,Android SDK提供了...

    android培训ppt

    总之,这份“android培训ppt”是一份全面的Android开发指南,无论你是初学者还是有经验的开发者,都能从中获得有价值的知识。通过学习和实践其中的内容,你将能够掌握Android应用开发的核心技能,并具备开发高质量...

    android通话时间统计器[实例,源代码].zip

    首先,我们要了解Android系统是如何处理电话事件的,以及如何利用这些事件来实现通话时间的追踪。 1. **BroadcastReceiver**:在Android中,电话事件是通过广播接收器(BroadcastReceiver)进行监听的。`...

    AutoTuner.zip_Android音频_android_android 蓝牙_android蓝牙_声音 频谱

    FFT将时间域的信号转换为频率域,从而获得不同频率成分的幅度,进一步可以绘制出频谱图。 5. **UI设计与更新**:在Android中,可以使用View类或自定义View来创建频谱显示区域。数据的实时更新需要在UI线程之外进行...

    Android_Content.rar_android

    这份“Android_Content.pdf”涵盖了Android开发的诸多方面,无论你是初学者还是有经验的开发者,都能从中获得宝贵的知识和技巧,提升你的Android编程能力。通过深入学习和实践,你将能够构建出功能丰富、用户体验...

    基于AndroidStudio打地鼠小游戏源代码

    对于游戏开发,Android Studio还支持Gradle构建系统,可以灵活配置项目依赖和构建流程。 打地鼠游戏是一款简单而有趣的休闲游戏,玩家需要在地鼠冒出地面时迅速点击它们,以获得分数。在Android平台上实现这款游戏...

Global site tag (gtag.js) - Google Analytics