zoukankan      html  css  js  c++  java
  • android Timer使用方法

    Timer属性:http://www.apihome.cn/api/java/Timer.html

    声明创建:

     1 private Timer mTimer;
     2 
     3 protected void onCreate(Bundle savedInstanceState) { 
     5         super.onCreate(savedInstanceState);
     6         this.setContentView(R.layout.main); 7 
     8         timer = new Timer();
     9         timer.schedule(task, 1000, 5000);
    11     }
    13 
    14 TimerTask task = new TimerTask() {
    15         @Override    
    16         public void run() {
    18             Message message = new Message();
    20             message.what = 1;
    22             handler.sendMessage(message);
    24         }
    26     };
    27 
    28     final Handler handler = new Handler() {
    30         public void handleMessage(Message msg) {
    32             switch (msg.what) {
    34             case 1:
    36                 log.e("Timer", "Timer");
    38                 //要实现的功能代码:update();
    40                 break;
    42             }
    44             super.handleMessage(msg);
    46         }
    48     };
    49 
    50     protected void onDestroy() {
    52         if (timer != null) {
    54             timer.cancel();
    56             timer = null;
    58         }
    60         super.onDestroy();
    62     }

    最重要的一点是 timer.schedule(task,1000,5000),如果设置为 timer.schedule(task,5000)是不会工作的。
    因为timer.schedule(task,5000) 是表示执行一次的任务。
    timer.schedule(task,1000,5000)表示 1 秒钟后开始 5 秒钟为周期 重复执行

     1     private Handler handler = new Handler( );
     2 
     3     private Runnable runnable = new Runnable( ) {
     4 
     5     public void run ( ) {
     6 
     7        update( );
     8 
     9        handler.postDelayed(this,1000);     //postDelayed(this,1000)方法安排一个Runnable对象到主线程队列中
    10 
    11       }
    12 
    13     };
    14 
    15     handler.postDelayed(runnable,1000);         // 开始Timer
    16 
    17     handler.removeCallbacks(runnable);           //停止Timer

    (转自:http://blog.csdn.net/jincf2011/article/details/6603916)

  • 相关阅读:
    【转】基于keras 的神经网络股价预测模型
    [转]Python中yield的解释
    【转】类似py2exe软件真的能保护python源码吗
    [转]You Could Become an AI Master Before You Know It. Here’s How.
    【转】Linux安装HDF5及遇到的问题总结
    [转]TA-Lib 安装
    【转】Python metaclass
    【转】解决ubuntu13.10下,无法双击运行脚本文件
    ubuntu16 配置git
    ubuntu16 安装matplotlib
  • 原文地址:https://www.cnblogs.com/jenson138/p/4331593.html
Copyright © 2011-2022 走看看