成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Android三種實現(xiàn)定時器詳解及實現(xiàn)方法

移動開發(fā) Android
本文主要介紹 Android 定時器的知識資料,這里整理了三種方法來實現(xiàn)定時器的方法,有需要的小伙伴可以參考下。

[[171357]]

本文主要介紹 Android 定時器的知識資料,這里整理了三種方法來實現(xiàn)定時器的方法,有需要的小伙伴可以參考下。

方法一:Handler+Thread

  1. package com.xunfang.handerDemo;  
  2.    
  3. import android.app.Activity;  
  4. import android.os.Bundle;  
  5. import android.os.Handler;  
  6. import android.os.Message;  
  7. import android.widget.TextView;  
  8.    
  9. /**  
  10.  * handler定時器  
  11.  *  
  12.  * @author Smalt  
  13.  *  
  14.  */ 
  15. public class HanderDemoActivity extends Activity {  
  16.  TextView tvShow;  
  17.  private int i = 0;  
  18.    
  19.  @Override 
  20.  public void onCreate(Bundle savedInstanceState) {  
  21.   super.onCreate(savedInstanceState);  
  22.   setContentView(R.layout.main);  
  23.   tvShow = (TextView) findViewById(R.id.tv_show);  
  24.   new Thread(new ThreadShow()).start();  
  25.  }  
  26.    
  27.  // handler類接收數(shù)據(jù)  
  28.  Handler handler = new Handler() {  
  29.   public void handleMessage(Message msg) {  
  30.    if (msg.what == 1) {  
  31.     tvShow.setText(Integer.toString(i++));  
  32.     System.out.println("receive....");  
  33.    }  
  34.   };  
  35.  };  
  36.    
  37.  // 線程類  
  38.  class ThreadShow implements Runnable {  
  39.    
  40.   @Override 
  41.   public void run() {  
  42.    // TODO Auto-generated method stub  
  43.    while (true) {  
  44.     try {  
  45.      Thread.sleep(1000);  
  46.      Message msg = new Message();  
  47.      msg.what = 1;  
  48.      handler.sendMessage(msg);  
  49.      System.out.println("send...");  
  50.     } catch (Exception e) {  
  51.      // TODO Auto-generated catch block  
  52.      e.printStackTrace();  
  53.      System.out.println("thread error...");  
  54.     }  
  55.    }  
  56.   }  
  57.  }  
  58. }  

方法二:Handler類自帶的postDelyed

  1. package com.xunfang.handerDemo;  
  2.    
  3. import android.app.Activity;  
  4. import android.os.Bundle;  
  5. import android.os.Handler;  
  6. import android.widget.TextView;  
  7.    
  8. /**  
  9.  * handler定時器使用postDelyed實現(xiàn)  
  10.  *  
  11.  * @author Smalt  
  12.  *  
  13.  */ 
  14. public class HanderDemoActivity extends Activity {  
  15.  TextView tvShow;  
  16.  private int i = 0;  
  17.  private int TIME = 1000;  
  18.    
  19.  @Override 
  20.  public void onCreate(Bundle savedInstanceState) {  
  21.   super.onCreate(savedInstanceState);  
  22.   setContentView(R.layout.main);  
  23.   tvShow = (TextView) findViewById(R.id.tv_show);  
  24.   handler.postDelayed(runnable, TIME); //每隔1s執(zhí)行  
  25.  }  
  26.    
  27.  Handler handler = new Handler();  
  28.  Runnable runnable = new Runnable() {  
  29.    
  30.   @Override 
  31.   public void run() {  
  32.    // handler自帶方法實現(xiàn)定時器  
  33.    try {  
  34.     handler.postDelayed(this, TIME);  
  35.     tvShow.setText(Integer.toString(i++));  
  36.     System.out.println("do...");  
  37.    } catch (Exception e) {  
  38.     // TODO Auto-generated catch block  
  39.     e.printStackTrace();  
  40.     System.out.println("exception...");  
  41.    }  
  42.   }  
  43.  };  
  44.    
  45. }  

方法三:Handler+Timer+TimerTask

  1. package com.xunfang.handerDemo;  
  2.    
  3. import java.util.Timer;  
  4. import java.util.TimerTask;  
  5.    
  6. import android.app.Activity;  
  7. import android.os.Bundle;  
  8. import android.os.Handler;  
  9. import android.os.Message;  
  10. import android.widget.TextView;  
  11.    
  12. /**  
  13.  * 定時器實現(xiàn):Handler+Timer+TimerTask  
  14.  *  
  15.  * @author Smalt  
  16.  *  
  17.  */ 
  18. public class HanderDemoActivity extends Activity {  
  19.  TextView tvShow;  
  20.  private int i = 0;  
  21.  private int TIME = 1000;  
  22.    
  23.  @Override 
  24.  public void onCreate(Bundle savedInstanceState) {  
  25.   super.onCreate(savedInstanceState);  
  26.   setContentView(R.layout.main);  
  27.   tvShow = (TextView) findViewById(R.id.tv_show);  
  28.   timer.schedule(task, 1000, 1000); // 1s后執(zhí)行task,經(jīng)過1s再次執(zhí)行  
  29.  }  
  30.    
  31.  Handler handler = new Handler() {  
  32.   public void handleMessage(Message msg) {  
  33.    if (msg.what == 1) {  
  34.     tvShow.setText(Integer.toString(i++));  
  35.    }  
  36.    super.handleMessage(msg);  
  37.   };  
  38.  };  
  39.  Timer timer = new Timer();  
  40.  TimerTask task = new TimerTask() {  
  41.    
  42.   @Override 
  43.   public void run() {  
  44.    // 需要做的事:發(fā)送消息  
  45.    Message message = new Message();  
  46.    message.what = 1;  
  47.    handler.sendMessage(message);  
  48.   }  
  49.  };  
  50. }  

以上就是對Android 定時器的資料整理后續(xù)繼續(xù)補充相關(guān)知識,謝謝大家的支持!

責(zé)任編輯:趙寧寧 來源: 腳本之家
相關(guān)推薦

2018-12-03 12:20:52

Systemd定時器Linux

2013-01-04 15:47:54

Android開發(fā)平鋪UI設(shè)計

2009-06-15 15:02:48

Spring定時器

2014-12-31 17:42:47

LBSAndroid地圖

2024-05-28 08:17:54

2023-04-13 07:41:14

RoCE技術(shù)RDMA

2022-11-30 15:15:48

2021-03-09 14:12:07

Java 框架定時

2021-07-13 12:31:27

IT組織改進首席技術(shù)官

2009-06-18 11:07:17

Spring fram

2024-09-20 05:49:04

SpringBoot后端

2021-11-23 10:30:35

Android技術(shù)代碼

2013-07-29 10:10:40

TCP協(xié)議TCP定時器TCP

2021-07-27 16:01:29

高并發(fā)定時器高性能

2021-08-11 10:10:26

Linux定時器數(shù)組

2010-09-10 08:54:52

DIV居中

2015-05-07 15:19:47

IaaSPaaSAzure

2010-09-06 10:04:31

CSS樣式表

2024-11-06 09:28:52

架構(gòu)客戶端靜態(tài)

2010-08-26 16:19:41

DIV圓角
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 黄色网址在线免费观看 | 日韩中文在线视频 | 国产在线一区二区 | 自拍偷拍视频网 | 国产一级免费视频 | 欧美九九九 | 亚洲欧洲精品一区 | 国产农村妇女毛片精品久久麻豆 | 国产精品久久 | 国产中文字幕网 | 欧美中国少妇xxx性高请视频 | 亚洲国产精品一区二区第一页 | 久久综合一区二区三区 | 91九色麻豆 | 麻豆久久久久 | 龙珠z国语版在线观看 | 国产精品视频网址 | 美女视频一区 | 91欧美激情一区二区三区成人 | 国产精品国产三级国产aⅴ中文 | 美女福利视频 | 国产福利在线看 | www.国产.com| 做a视频在线观看 | 成人国产精品免费观看视频 | 九九九久久国产免费 | 亚洲一二三区在线观看 | 国产成人精品一区二区三区在线 | 国产区精品在线观看 | 欧美精品久久久 | 91精品国产一区二区三区动漫 | 日日精品 | 成人性视频免费网站 | 91在线视频播放 | 国产91精品久久久久久久网曝门 | 欧美亚洲日本 | 蜜月aⅴ国产精品 | 欧美全黄 | 亚洲日本三级 | 四虎永久 | 国产美女自拍视频 |