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

Android下一个简单的定时器,每隔一秒输出一个数字

步骤:

1. 创建Handler对象(在主线程创建,这样我们也可以方便地更新UI,如果需要的话)。

2. 创建Runnable对象,在run方法中执行打印,然后延迟1秒再次执行。

package com.example.dongcheng;import android.os.Handler;
import android.os.Looper;
import android.util.Log;public class DateMonitor {private static final String TAG = "东成2022";private final Handler handler = new Handler(Looper.getMainLooper());private Runnable runnable;private int totalTime;private long intervalMillis;public DateMonitor(long intervalMillis) {this.intervalMillis = intervalMillis;}public void start() {totalTime = 1;runnable = new Runnable() {@Overridepublic void run() {if (totalTime <= 10){Log.d(TAG, "输出: " + totalTime);totalTime++;handler.postDelayed(this, intervalMillis);}else {stop();}}};handler.postDelayed(runnable, intervalMillis);}public void stop() {if (runnable != null) {handler.removeCallbacks(runnable);Log.d(TAG, "定时输出已停止");}}
}

屏幕截个图:

完美实现!!!

http://www.xdnf.cn/news/1108585.html

相关文章:

  • Syntax Error: TypeError: Cannot set properties of undefined (setting ‘parent‘)
  • vue3 canvas 选择器 Canvas 增加页面性能
  • Kimi K2万亿参数开源模型原理介绍
  • 【论文阅读】HCCF:Hypergraph Contrastive Collaborative Filtering
  • 缓存三剑客解决方案
  • 【C语言】回调函数、转移表、qsort 使用与基于qsort改造冒泡排序
  • 利用docker部署前后端分离项目
  • 敏捷开发方法全景解析
  • SQL server之版本的初认知
  • C#枚举:从基础到高级的全方位解析
  • 《通信原理》学习笔记——第一章
  • 《Spring 中上下文传递的那些事儿》Part 11:上下文传递最佳实践总结与架构演进方向
  • 基于MCP的CI/CD流水线:自动化部署到云平台的实践
  • Vue Vue-route (5)
  • Adobe Illustrator关于图标创建的问题
  • 【跟我学运维】chkconfig jenkins on的含义
  • 初等行变换会改变矩阵的什么?不变改变矩阵的什么?求什么时需要初等行变换?求什么时不能初等行变换?
  • 回归(多项式回归)
  • 电网通俗解析术语2:一二次设备关联
  • 【PycharmPyqt designer桌面程序设计】
  • Effective Modern C++ 条款9:优先考虑别名声明而非typedef
  • Socket到底是什么(简单来说)
  • 【Elasticsearch】昂贵算法与廉价算法
  • 史上最全 MySQL 锁详解:从理论到实战,一篇搞定所有锁机制
  • 网络编程员工管理系统
  • 【数据分析】03 - Matplotlib
  • 【Elasticsearch 】search_throttled
  • 力扣-19. 删除链表的倒数第N个节点
  • Windows环境下解决Matplotlib中文字体显示问题的详细指南
  • Git入门教程