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

Android計時器正確應用方式解析

移動開發 Android
Android計時器看似簡單,但是真正操作起來并不是很容易。今天大家就可以通過這里介紹的內容對這一應用技巧有一個充分的掌握。

目前許多大型廠商都紛紛將目光轉向了智能手機,在手機領域展開了一場激烈的競爭。由谷歌推出的Android手機操作系統就是一其中一個競爭對手。在這里我們可以了解到Android計時器的相關應用。

昨天晚上在寫一個Android計時器,開始認為很容易,用Java一般寫法,結果發現計時器根本不能運行,但卻不報任何錯誤,當時就呆在那了,不知道該怎么辦了,后來在網上查了一下,Android考慮到線程安全問題,不允許在線程中執行UI線程(我的現在所知道,還有其他的限制發現中),在Android中,有一個很有意思的類:android.os.Handler,這個可以實現各處線程間的消息傳遞。

先看段代碼,這個實例化了一個Handler,Handler可以通過Message在多個線程通訊,我這里做的是定時recLen加1,然后以一定的格式,顯示到recTime上(UI線程上的操作)。

  1. final Handler handler = new Handler(){   
  2. public void handleMessage(Message msg) {   
  3. switch (msg.what) {   
  4. case 1:   
  5. recLen++;  
  6. recTime.setText(GetRecTime(recLen));  
  7. break;   
  8. }   
  9. super.handleMessage(msg);   
  10. }   
  11. };  

下面定實例化一個TimerTask,這個是為Timer提供一個定時執行的內容。我在這個方法中加的是給Handler一個發送消息功能,因這在Timer的線程中,無法直接操作UI線程。

  1. TimerTask task = new TimerTask(){   
  2. public void run() {   
  3. Message message = new Message();   
  4. message.what = 1;   
  5. handler.sendMessage(message);   
  6. }   
  7. };  

剩下的工作就簡單多,添加一個Timer,可以讓程序運行起來了

  1. timer = new Timer(true);  
  2. timer.schedule(task,1000, 1000);   
  3. //延時1000ms后執行,1000ms執行一次  
  4. //timer.cancel(); //退出Android計時器

說到這里,也許有些還感覺云里霧里,好久沒寫東西,也不知道怎么把問題說的更明白,這個再貼上我開始的錯誤寫法,對比錯誤寫法,也許能讓大家更快的明白過來

Android計時器錯誤寫法

  1. TimerTask task = new TimerTask(){   
  2. public void run() {   
  3. recLen++;  
  4. recTime.setText(GetRecTime(recLen));  
  5. //直接在TimerTask中操作UI線程,單步調試的時候發現,程序根本就沒執行到這里  
  6. }   
  7. };   
  8. timer = new Timer(true);  
  9. timer.schedule(task,1000, 1000);  

Android計時器的相關應用方法就為大家介紹到這里。

【編輯推薦】

  1. Android HttpURLConnection應用技巧分享
  2. Android系統應用程序基本概念解讀
  3. Android Spinner使用技巧講解
  4. Android復選框源碼解析
  5. Android系統架構基本模式解析
責任編輯:曹凱 來源: 博客園
相關推薦

2010-03-03 17:58:16

Python同步隊列

2010-02-22 14:09:08

WCF Dispose

2010-02-05 14:12:46

C++聲明放置

2010-03-04 13:30:11

Python file

2021-07-02 16:13:01

區塊鏈金融數據庫

2010-01-25 09:28:54

Android模擬器

2010-03-05 15:01:29

Python解析XML

2011-05-31 16:50:35

Android 線程

2010-03-03 17:33:52

Python讀取XML

2010-05-28 15:16:40

MySQL 資源

2009-12-07 14:38:14

PHP foreach

2010-03-04 14:51:21

Python Conf

2010-07-05 14:34:19

2010-02-22 10:42:12

WCF Stream

2010-05-25 18:01:35

linux MySQL

2010-05-28 19:20:36

MySQL mysql

2011-09-08 14:01:01

Android Wid實例

2010-01-05 15:00:30

.NET Framew

2013-05-23 16:01:47

Android開發移動開發Chronometer

2010-02-05 17:49:24

C++常量引用
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 黑人巨大精品欧美一区二区免费 | 91视频在线 | 91精品国产一区二区三区 | 一区二区精品 | 中文字幕成人av | 91精品国产乱码久久久久久久久 | 久草色视频 | 色狠狠一区 | 亚洲男人的天堂网站 | 亚洲视频中文字幕 | 亚洲天堂色 | 国产精品久久久久久中文字 | 亚洲视频一区二区三区 | 91网站视频在线观看 | 久久亚洲综合 | 97碰碰碰 | 玖玖国产 | 国产精品毛片一区二区在线看 | 美女在线一区二区 | 国产精品免费一区二区 | 亚洲三区在线 | 亚洲欧洲精品成人久久奇米网 | 天天操天天射综合 | 久久一及片 | 精品国产一区二区在线 | 国产在线观看一区二区三区 | 日韩三级在线观看 | 久久精品久久精品 | 欧美日韩黄 | 一区二区视屏 | 中文字幕亚洲欧美日韩在线不卡 | 国产精品免费小视频 | 婷婷丁香综合网 | 日韩午夜一区二区三区 | 国产精品久久久久久一区二区三区 | 欧美三区在线观看 | 国产日韩一区二区三免费高清 | 毛片视频免费 | 伊人伊成久久人综合网站 | 久久亚洲精品国产精品紫薇 | 91亚洲精品在线观看 |