8.Android中,每隔一段时间执行某…
2015-08-02 12:57
363 查看
1,在开发中我们有时会有这样的需求,即在固定的每隔一段时间执行某一个任务。比如UI上的控件需要随着时间改变,我们可以使用Java为我们提供的计时器的工具类,即Timer和
TimerTask。
Timer是一个普通的类,其中有几个重要的方法;而TimerTask则是一个抽象类,其中有一个抽象方法run(),类似线程中的run()方法,我们使用Timer创建一个他的对象,然后使
用这对象的schedule方法来完成这种间隔的操作。
schedule方法有三个参数
第一个参数就是TimerTask类型的对象,我们实现TimerTask的run()方法就是要周期执行的一个任务;
第二个参数有两种类型,第一种是long类型,表示多长时间后开始执行,另一种是Date类型,表示从那个时间后开始执行;
第三个参数就是执行的周期,为long类型。
schedule方法还有一种两个参数的执行重载,第一个参数仍然是TimerTask,第二个表示为long的形式表示多长时间后执行一次,为Date就表示某个时间后执行一次。
Timer就是一个线程,使用schedule方法完成对TimerTask的调度,多个TimerTask可以共用一个Timer,也就是说Timer对象调用一次schedule方法就是创建了一个线程,并且
调用一次schedule
后TimerTask是无限制的循环下去的,使用Timer的cancel()停止操作。当然同一个Timer执行一次cancel()方法后,所有Timer线程都被终止。
2,四个方法
按需求调用即可
TimerTask。
Timer是一个普通的类,其中有几个重要的方法;而TimerTask则是一个抽象类,其中有一个抽象方法run(),类似线程中的run()方法,我们使用Timer创建一个他的对象,然后使
用这对象的schedule方法来完成这种间隔的操作。
schedule方法有三个参数
第一个参数就是TimerTask类型的对象,我们实现TimerTask的run()方法就是要周期执行的一个任务;
第二个参数有两种类型,第一种是long类型,表示多长时间后开始执行,另一种是Date类型,表示从那个时间后开始执行;
第三个参数就是执行的周期,为long类型。
schedule方法还有一种两个参数的执行重载,第一个参数仍然是TimerTask,第二个表示为long的形式表示多长时间后执行一次,为Date就表示某个时间后执行一次。
Timer就是一个线程,使用schedule方法完成对TimerTask的调度,多个TimerTask可以共用一个Timer,也就是说Timer对象调用一次schedule方法就是创建了一个线程,并且
调用一次schedule
后TimerTask是无限制的循环下去的,使用Timer的cancel()停止操作。当然同一个Timer执行一次cancel()方法后,所有Timer线程都被终止。
2,四个方法
//time为Date类型:在指定时间执行一次。 |
13 | timer.schedule(task, time); |
14 |
15 | //firstTime为Date类型,period为long,表示从firstTime时刻开始,每隔period毫秒执行一次。 |
16 | timer.schedule(task, firstTime, period); |
17 |
18 | //delay 为long类型:从现在起过delay毫秒执行一次。 |
19 | timer.schedule(task, delay); |
20 |
21 | //delay为long,period为long:从现在起过delay毫秒以后,每隔period毫秒执行一次。 |
22 | timer.schedule(task, delay, period); |
相关文章推荐
- 2.AndroidMainfest.xml文件解释
- Android新建Project项目工程…
- 1.Android常见的按钮监听器实现
- mac搭建android studio环境
- Android下Animation动画的使用 及 Volley加载图片动画实现
- Android开发笔记——SharedPreferences 存储实体类以及任意类型
- android开发规范
- Android开发笔记---Broadcast Receiver的简单使用
- Android studio Gradle sdl method not found ...
- Android-->View.setX()和.setY()的使用(移动布局,设置布局位置,动态添加View)
- Android ImageView 不显示JPEG图片 及 Android Studio中如何引用图片资源
- AndroidDevTools
- Android中Activity四种启动模式和taskAffinity属性详解
- Android AudioFlinger加载HAL层流程
- android 中 View的构造函数
- android编程注意事项
- Android 媒体扫描MediaScanner
- Android进阶学习之路——View事件的传递机制
- Android Service 访问安全
- Android中对Log日志文件的分析