Android自带倒计时控件Chronometer使用方法详解
作者:Android_小新哥哥 时间:2022-09-18 13:11:33
公司的以前的项目,看到使用了这个Android自带的倒计时控件Chronometer,现在整合了一下
先看看效果:
<Chronometer
android:id="@+id/chronometer"
android:layout_width="wrap_content"
android:layout_height="30dp" />
<Button
android:onClick="start"
android:text="开始"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<Button
android:onClick="stop"
android:text="停止"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<Button
android:onClick="reset"
android:text="重置"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
方法简介:
long getBase(); //返回基地的时间,由setBase(long)设置的,可以是SystemClock.elapsedRealtime()
String getFormat();//返回当前字符串格式,此格式是通过setFormat()实现的
void setBase(long base);//设置时间,计数定时器指定的值
void setFormat(String format);//设置显示的内容,计时器将会显示这个参数所对应的值得,如果字符串的值为null,那么返回的值为MM:SS格式的
private Chronometer chronometer;
private long recordTime;//记录下来的总时间
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
chronometer= (Chronometer) findViewById(R.id.chronometer);
chronometer.setFormat("计时:%s");//设置显示的格式
Toast.makeText(MainActivity.this, ""+recordTime, Toast.LENGTH_SHORT).show();
}
public void start(View view){
chronometer.setBase(SystemClock.elapsedRealtime()-recordTime);//跳过已经记录的时间
chronometer.start();
}
public void stop(View view){
chronometer.stop();
recordTime=SystemClock.elapsedRealtime()-chronometer.getBase();//保存这次记录的时间
}
public void reset(View view){
recordTime=0;//重置时间
chronometer.setBase(SystemClock.elapsedRealtime());
}
标签:Android,Chronometer,倒计时
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Http学习之组装报文
2021-12-30 07:23:18
![](https://img.aspxhome.com/file/2023/7/131987_0s.png)
springboot web项目打jar或者war包并运行的实现
2022-11-20 03:01:59
![](https://img.aspxhome.com/file/2023/8/81248_0s.png)
Java基于Socket实现多人聊天室
2022-11-08 14:11:12
C#中调用VB中Inputbox类的实现方法
2023-09-06 18:12:57
MyBatis图文并茂讲解注解开发一对一查询
2023-12-07 11:01:18
![](https://img.aspxhome.com/file/2023/9/67989_0s.png)
超详细讲解Java异常
2023-10-02 07:30:16
![](https://img.aspxhome.com/file/2023/3/80853_0s.png)
SpringBoot文件分片上传教程
2023-07-21 21:08:40
![](https://img.aspxhome.com/file/2023/9/57489_0s.jpg)
httpwebreqeust读取httponly的cookie方法
2022-04-19 19:47:05
springboot动态调用实现类方式
2021-07-05 21:33:17
JAVA生成短8位UUID的实例讲解
2021-08-21 04:26:19
SpringCloud网关组件zuul实例解析
2023-04-13 08:51:47
![](https://img.aspxhome.com/file/2023/1/62971_0s.png)
java基础的详细了解第九天
2022-11-11 20:53:50
![](https://img.aspxhome.com/file/2023/0/64950_0s.png)
Android仿QQ滑动弹出菜单标记已读、未读消息
2023-07-08 08:34:51
![](https://img.aspxhome.com/file/2023/6/123246_0s.gif)
详解SpringBoot 多线程处理任务 无法@Autowired注入bean问题解决
2022-09-19 19:35:17
SpringBoot利用@Retryable注解实现接口重试
2023-03-08 19:54:42
C#创建windows系统用户的方法
2022-07-16 20:30:12
SpringBoot错误处理机制以及自定义异常处理详解
2021-09-23 05:45:29
![](https://img.aspxhome.com/file/2023/4/70534_0s.png)
一篇文章带你入门Java数据类型
2022-06-10 09:25:44
![](https://img.aspxhome.com/file/2023/8/62338_0s.jpg)
基于Java实现收发电子邮件功能
2021-08-23 17:30:14
![](https://img.aspxhome.com/file/2023/7/80307_0s.png)
java 数据结构中栈和队列的实例详解
2022-02-20 22:58:25