通常情况下,这样使用计时器
                  Timer timer = new Timer();                   MyTimerTask timerTask = new MyTimerTask();                   timer.schedule(timerTask,5000);                                                           class MyTimerTask extendsTimerTask{                                        @Override                    public void run() {                    Message msg = new Message();                    msg.what=1;                    HideHandler.sendMessage(msg);                     }                    }                        
我们首先自定义计时任务task,然后在里面结合Handler进行相应的UI的修改。
在Android开发中,经常会用到线程和 Timer,如果没有主动关闭它们,当程序结束时,线程并没有被销毁,而是一直在后台运行着,当我们重新启动应用时,又会重新启动一个线程,周而复始,你 启动应用次数越多,开启的线程数就越多,你的机器就会变得越慢。还会导致意想不到的错误。

所以我们一定要注意:
                   /**                    * 在退出程序的时候需要销毁计时器,否则会占用很大资源                    */                    @Override                    protected void onDestroy() {                    hideTimer.cancel();                    super.onDestroy();                    }                        

但是,Google在API中明文指出,Android并不推荐使用timer,因为计时功能可以用Handler实现
相关实现方法请见我的文章“【Android】fragment+Viewpager+自动隐藏的导航栏”

更多相关文章

  1. Android(安卓)Handler线程间通信机制分析
  2. 详解Android中自定义View的invalidate,Handler和postInvalidate
  3. Android学习札记36:一个关于onSaveInstanceState ()方法的例子
  4. android 刷新View
  5. Android中的线程模型
  6. Android(安卓)Java 中Thread与Runnable的区别
  7. java版android Handler机制模型
  8. Android(安卓)消息机制 你了解多少
  9. Android高级进阶之路【六】Android(安卓)Framework解析

随机推荐

  1. Java基础编程练习9:已知三角形的三条边a,b
  2. 2021北京高新技术企业申报难度及相关要求
  3. Java基础编程练习8:猜数字游戏
  4. Java基础编程练习7:百钱百鸡问题。
  5. Linux宝塔负载均衡使用教程
  6. javascript创建对象几种方式
  7. IE6 png 透明 (三种解决方法)
  8. 流行的javascript库介绍
  9. 作用域和闭包; 类与类的继承
  10. 技术问答-23 javabean创建一个二叉树,左