当前位置: 首页 > news >正文

Android CountDownTimer

CountDownTimer 这个类用于倒计时。这样构造:
CountDownTimer countDownTimer = new CountDownTimer(10000, 1000) {@Overridepublic void onTick(long millisUntilFinished) {// TODO 每个周期执行一次。 millisUntilFinished为距离倒计时结束的剩余时长毫秒数}@Overridepublic void onFinish() {// TODO 倒计时结束}};countDownTimer.start(); // 开始倒计时

看下源码是怎么倒计时的:

倒计时启动时,发送一个消息。看下handler怎么处理消息的。handleMessage方法代码如下:

可见,倒计时启动的时候,就调用了一次onTick, 参数为倒计时剩余的时长毫秒数。后面每一个执行周期执行一次onTick方法,直到结束。 有个小细节,每次onTick方法调用后,都会计算下次onTick执行的时间,这里计算了onTick方法耗时,把这个耗时减去了,这样onTick的执行间隔就比较近似于设置的那个执行间隔了。 注意,handler延迟任务的延迟时间只是近似的时间,实际执行间隔会略大于设置 的时间。 不能拿这个间隔去计时。  另外,注意这个handler构造的时候没有显式传Looper对象,执行线程为实例化这个倒计时组件的线程。

http://www.lryc.cn/news/592058.html

相关文章:

  • Ubuntu系统下交叉编译Android的X265库
  • UVC for USBCamera in Android - 篇二
  • 股指期货的杠杆比例一般是多少?
  • 【软件系统架构】系列七:系统性能——路由器性能深入解析
  • 【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts) 视频教程 - jieba库分词简介及使用
  • 短视频矩阵系统哪家好?全面解析与推荐
  • 短视频矩阵系统:从源头到开发的全面解析
  • 【unity实战】使用unity的Navigation+LineRenderer实现一个3D人物寻路提前指示预测移动轨迹的效果,并可以适配不同的地形
  • Charles 中文版介绍与使用指南 强大抓包工具助力 API 调试与网络优化
  • 网络编程(modbus,3握4挥)
  • 新书推介 | 吉林大学出版教材《汽车智能辅助驾驶系统技术》,国产仿真工具链GCKontrol-GCAir教学应用
  • mybatisdemo(黑马)
  • S7-1200 Profinet 的诊断功能
  • 嵌入式教育的云端革命:零边界实验室如何重塑未来工程师
  • 硬核电子工程:从硅片到系统的全栈实战指南—— 融合电路理论、嵌入式开发与PCB设计的工程艺术
  • 第三章自定义检视面板_创建自定义编辑器类_检测与应用修改(本章进度(2/9))
  • Xilinx Zynq:一款适用于软件定义无线电的现代片上系统
  • 深度学习之----对抗生成网络-pytorch-CycleGAN-and-pix2pix
  • IP协议深入理解
  • RustDesk 自建中继服务器教程(Mac mini)
  • 蓝松抠图的几大优点.
  • Vue中的refs字段使用记录
  • (数据结构)线性表(上):SeqList 顺序表
  • k8s:利用kubectl部署postgis:17-3.5
  • Kotlin序列
  • CloudFabric解决方案
  • 【怜渠客】简单实现手机云控Windows电脑锁屏
  • HTTP 性能优化:五条建议
  • 线程安全集合——ConcurrentHashMap
  • 微店平台商品详情接口技术实现指南