Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 高級開發 >> Android Timer編寫方式深解

Android Timer編寫方式深解

編輯:高級開發

android手機操作系統是一款基於Linux平台的開源手機操作系統。對於編程人員來說,修改這一操作系統的方法應該很容易就可以掌握。不過中間還是有許多細節需要我們注意。比如寫慣Java的人可能會認為android Timer的使用應該如下:

程序功能很簡單:10秒後,SetTitle為“hear me?”,然後,實際上這樣做是不行的,這跟android的線程安全有關!

Java代碼

  1. package com.ray.test;
  2. import Java.util.Timer;
  3. import Java.util.TimerTask;
  4. import android.app.Activity;
  5. import android.os.Bundle;
  6. public class JavaTimer extends Activity {
  7. Timer timer = new Timer();
  8. TimerTask task = new TimerTask(){
  9. public void run() {
  10. setTitle("hear me?");
  11. }
  12. };
  13. public void onCreate(Bundle savedInstanceState) {
  14. super.onCreate(savedInstanceState);
  15. setContentVIEw(R.layout.main);
  16. timer.schedule(task, 10000);
  17. }
  18. }
  19. package com.ray.test;
  20. import Java.util.Timer;
  21. import Java.util.TimerTask;
  22. import android.app.Activity;
  23. import android.os.Bundle;
  24. public class JavaTimer extends Activity {
  25. Timer timer = new Timer();
  26. TimerTask task = new TimerTask(){
  27. public void run() {
  28. setTitle("hear me?");
  29. }
  30. };
  31. public void onCreate(Bundle savedInstanceState) {
  32. super.onCreate(savedInstanceState);
  33. setContentVIEw(R.layout.main);
  34. timer.schedule(task, 10000);
  35. }
  36. }

但實際上的用法應該通過配合Handler來實現android Timer功能的!

Java代碼

  1. package com.ray.test;
  2. import Java.util.Timer;
  3. import Java.util.TimerTask;
  4. import android.app.Activity;
  5. import android.os.Bundle;
  6. import android.os.Handler;
  7. import android.os.Message;
  8. public class TestTimer extends Activity {
  9. Timer timer = new Timer();
  10. Handler handler = new Handler(){
  11. public void handleMessage(Message msg) {
  12. switch (msg.what) {
  13. case 1:
  14. setTitle("hear me?");
  15. break;
  16. }
  17. super.handleMessage(msg);
  18. }
  19. };
  20. TimerTask task = new TimerTask(){
  21. public void run() {
  22. Message message = new Message();
  23. message.what = 1;
  24. handler.sendMessage(message);
  25. }
  26. };
  27. public void onCreate(Bundle savedInstanceState) {
  28. super.onCreate(savedInstanceState);
  29. setContentVIEw(R.layout.main);
  30. timer.schedule(task, 10000);
  31. }
  32. }

android Timer的相關操作就為大家介紹到這裡。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved