Android的计时器与Java的有点不同,需要配套TimerTask使用,基本的用法如下:

Handler handler = new Handler() {       // 定义处理信息的方法       public void handleMessage(Message msg) {           switch (msg.what) {           case 1:               //处理代码               break;           }           super.handleMessage(msg);       }     };   TimerTask timerTask = new TimerTask() {         @Override      public void run() {           Message message = new Message();           message.what = 1;           handler.sendMessage(message);       }     };   // new一个计时器实例   Timer timer = new Timer();   // new一个计时器任务的实例,并重写其run方法,定义触发的动作     // 设定计时器的任务以及时间   timer.schedule(welcomeTask, 1500);  

Timer有个Cancel的方法,一旦调用,之后再schedule任务就会报错.同样,TimerTask也可以取消,但当Timer计时完毕触发调用该任务时就会报错说,该任务已取消!

所以要实现循环计时的动作,可以用以下的方法:

              private Handler handler = new Handler() {// 定义处理信息的方法public void handleMessage(Message msg) {switch (msg.what) {case 1:                                                           //处理代码                                       timer.cancel();           break;}super.handleMessage(msg);}};;private Timer timer =null;private class MyTimeTask extends TimerTask{@Overridepublic void run() {Message message = new Message();message.what = 1;handler.sendMessage(message);}}//某处调用timer*************************************************************                timer = new Timer(); //计时任务开始timer.schedule(new MyTimeTask(), 2000);

更多相关文章

  1. 浅谈Java中Collections.sort对List排序的两种方法
  2. Python list sort方法的具体使用
  3. python list.sort()根据多个关键字排序的方法实现
  4. Android(安卓)回调详解及简单实例
  5. Android(安卓)复习笔记之图解TextView类及其XML相关属性和方法
  6. android完全退出应用程序
  7. android.support library找不到的解决方法
  8. android 调用 react-native方法
  9. Android定制出厂默认输入法(其他设置类似)

随机推荐

  1. Robotium学习笔记一
  2. Android: 设置wifi设备名
  3. android音频采集,MediaCodec实时PCM转AAC
  4. Android(安卓)NDK学习 简介
  5. Ubuntu Qt安装安卓android编译器
  6. 准备一个rubymotion for android的实际项
  7. android 内存泄漏的分析
  8. Android(安卓)Studio第三十八期 - HIOS跳
  9. Android中拍照、图片、录音、视频和音频
  10. Android:Property Animation