android倒计时功能,android实现倒计时功能(开始、暂停、0秒结束)
本文实例为大家分享了android实现倒计时功能的具体代码,供大家参考,具体内容如下
【思路】:通过 timer 执行周期延时的任务,handler 中将计时信息更新,并在计时结束时结束 timer 的周期任务。
- 在布局文件中添加一个TextView和Button控件,并在onCreate方法中获得到TextView和Button的id;
xml布局代码:
android:id="@+id/button_start_timer"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_gravity="center_vertical"
android:gravity="center"
android:text="开始"
android:textSize="12sp"
/>
android:id="@+id/textViewTime24"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="2"
android:gravity="center"
android:text="24"
android:textColor="#33ff00"
android:textSize="60sp" />
java代码
package com.example.wlf.gamerecorder.gameon;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.os.Handler;
import com.example.wlf.gamerecorder.R;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
public class SimpleGameonActivity extends AppCompatActivity {
private final static int COUNT = 1;
private final static int TOTAL_TIME_24 = 24;
private TextView textViewTime24;
Timer timer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_simple_gameon);
textViewTime24=(TextView)findViewById(R.id.textViewTime24);//24秒倒计时
final Button button_start_timer = (Button)findViewById(R.id.button_start_timer);
button_start_timer.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String str = button_start_timer.getText().toString();//获取按钮字符串
if(str.equals("开始")){ //切换按钮文字
button_start_timer.setText("暂停");
initView();
}
else{
button_start_timer.setText("开始");
timer.cancel();//终止线程
}
}
});
}
public void initView(){
//countDown = (TextView) findViewById(R.id.textViewTime24);
timer = new Timer();
/**
* 每一秒发送一次消息给handler更新UI
* schedule(TimerTask task,long delay,long period)
*/
timer.schedule(new TimerTask() {
@Override
public void run() {
handler.sendEmptyMessage(COUNT);
}
},1000);
}
private Handler handler = new Handler(){
int num = TOTAL_TIME_24;
public void handleMessage(android.os.Message msg) {
switch (msg.what) {
case COUNT:
textViewTime24.setText(String.valueOf(num));
if(num == 0)
timer.cancel();//0秒结束
num--;
break;
default:
break;
}
};
};
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
小编个人微信号 jb51ccc
喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!
android倒计时功能,android实现倒计时功能(开始、暂停、0秒结束)相关推荐
- android倒计时功能,Android 实现列表倒计时功能
Android 实现列表倒计时功能 发布时间:2020-08-21 21:47:11 来源:脚本之家 阅读:147 作者:Choi晨 单个计时器,然后遍历数据 刷新条目: 两种实现方式:1.Handl ...
- android自定义秒表,Android自定义Chronometer实现短信验证码秒表倒计时功能
本文实例为大家分享了Chronometer实现倒计时功能,Android提供了实现按照秒计时的API,供大家参考,具体内容如下 一.自定义ChronometerView 继续自TextView 主要原 ...
- Android实现获取验证码的倒计时功能
开发中经常会遇到获取短信验证码,获取验证码后需要等待1分钟倒计时,这段时间是不能再次发送短信请求的. 实现如下: CountDownTimerUtils.java package com.zhw.my ...
- android 实现自动拍照,Android自定义相机实现定时拍照功能
这篇博客为大家介绍Android自定义相机,并且实现倒计时拍照功能. 首先自定义拍照会用到SurfaceView控件显示照片的预览区域,以下是布局文件: activity_main.xml andro ...
- Android简单实现计时和倒计时
在安卓开发中,经常会使用计时和倒计时来开发,安卓为我们提供了非常便捷的控件 Chronometer,下面依次实现计时和倒计时: 计时功能: <?xml version="1.0&quo ...
- android列表倒计时,RecyclerView实现列表倒计时
最近在做一个项目,需要用到列表倒计时功能,捣鼓半天终于弄了出来,在安卓中实现这个效果需要用到Countdowntimer,通过这个类的使用,不仅可以实现倒计时的效果,还可以完美解决在实现倒计时过程中的 ...
- Android 开源项目分类汇总 APP功能汇总
Android 开源项目第一篇--个性化控件(View)篇 包括ListView.ActionBar.Menu.ViewPager.Gallery.GridView.ImageView.Progr ...
- android如何暂停倒计时,Android计时器和倒计时的实现(含开始,暂停,和复位)...
倒计时和计时在比赛中经常用到,由于涉及到子线程和主线程的通信问题,同学们在制作的时候总有点畏手畏脚的,今天会有两个神器出现,帮助大家攻克这两道难关! 神器一:chronometer --andrdoi ...
- android 重置倒计时,Android计时器跟倒计时的实现(含开始,暂停,和复位)
倒计时和计时在比赛中经常用到,由于涉及到子线程和主线程的通信问题,同学们在制作的时候总有点畏手畏脚的,今天会有两个神器出现,帮助大家攻克这两道难关! 神器一:chronometer --andrdoi ...
最新文章
- Chrome控制台使用详解
- 【译】Java中的对象序列化
- Shell 脚本修改 Mac IP地址
- 代谢组学的相关分析数据库,MetaboAnalyst 5.0 使用指南
- java黄金连分数_蓝桥杯 | Java B组省赛真题练习——黄金连分数-Go语言中文社区...
- 认识和选购极致画质的显示器
- c语言深度解剖 pdf,c语言深度解剖(解密).pdf.pdf
- 概念性jQuery内容编辑器
- CVPR2018 Tutorial 之 Visual Recognition and Beyond
- HandyJSON:Swift语言JSON转Model工具库
- 【★原创★】夜晚,不要让电白白流失!
- 正则化regularization
- 大数据分析的特点都有哪些
- Oracle 相关知识点结构图
- CCF推荐期刊/会议历年发表论文数据库:CCF Rec-Paper DB
- 软件测试python版本的决策表法解决preDate返回前一天日期
- Ubuntu16.04中文输入法安装初战
- 猎头Fiona总结的加入淘宝网的十个理由
- 折线迷你图怎么设置_Excel如何制作小微型的迷你图?
- pyqt5+pyinstaller图标ico制作说明
热门文章
- unity字符串换行符_Unity中Text中首行缩进两个字符和换行的代码
- java 解压缩 工具类_Java实现的zip压缩及解压缩工具类示例
- android获取导航栏宽高,Android获取屏幕的宽高度、状态栏、标题栏、导航栏、编辑区域高度...
- 低代码可视化报表开源工具,只要在线拖拽就能做出复杂数据报表
- Spinnaker:云原生多云环境持续部署的未来这样玩!
- 退休是不可能的,90岁还要继续干!
- Java 中商业运算必备的精确运算类:BigDecimal
- java计算5 5_Java基础学习笔记 -- 5(运算符)
- php javascript wav波形绘制,PHP分析.wav文件并绘制png格式的波形图
- admi后台 vue_vue-admin-webapp后台管理系统