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获取本机Mac地址及IP地址的方法
  5. Android(安卓)远程链接 daemon not running 解决方法
  6. 问题:在运行android的项目时出现的异常
  7. android > Android实现计时与倒计时的几种方法
  8. 屏幕切换,保存内容
  9. 非UI线程可不可以更新UI(一)

随机推荐

  1. Android的开源隐忧:品牌稀释 代码分裂
  2. 昨日看了一本书《Android技术内幕.系统卷
  3. android辅助开发工具包介绍
  4. 【更新】Google 与微软开始口水战
  5. 扬州旅游app(一)
  6. React Native之如何在Android上添加阴影
  7. 十分钟让你了解Android触摸事件原理(Input
  8. app在android studio的构建过程
  9. Android是否可以实现静默安装模式
  10. android插件开发机制研究