Android计数器的实现(倒计时)
安卓实现计数器有四种方式,直接给代码
1、使用Thread+Handler
;
private Handler handler1 = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
tvNumber.setText(msg.what + "");
}
};
private void counter1() {
number = ;new Thread() {
public void run() {
) {
Message msg = handler1.obtainMessage();
msg.what = number;
handler1.sendMessage(msg);
try {
Thread.sleep();
} catch (InterruptedException e) {
e.printStackTrace();
}
number--;// 数字
}
};
}.start();
}
2、仅使用Handler
private void counter2() {
Message msg = handler2.obtainMessage();
msg.what = ;
handler2.sendMessageDelayed(msg, );
}
Handler handler2 = new Handler() {
public void handleMessage(Message msg) {
super.handleMessage(msg);
int num = msg.what;
tvNumber.setText(num + "");
) {
num--;
Message message = handler2.obtainMessage();
message.what = num;
handler2.sendMessageDelayed(message, );
}
};
};
3、使用android.os.CountDownTimer类实现
private void counter3() {
, ) {
public void onTick(long millisUntilFinished) {
tvNumber.setText(millisUntilFinished / + "");
}
public void onFinish() {
tvNumber.setText(");
}
}.start();
}
4、使用Timer+handler
;
private TimerTask timerTask;
private Timer timer;
private void counter4() {
number = ;
timerTask = new TimerTask() {
@Override
public void run() {
){
Message msg = handler1.obtainMessage();
msg.what = number;
handler1.sendMessage(msg);
number --;
}
}
};
timer = new Timer();
timer.schedule(timerTask, , );
}
Android计数器的实现(倒计时)的更多相关文章
- Android—实现自定义相机倒计时拍照
这篇博客为大家介绍Android自定义相机,并且实现倒计时拍照功能 首先自定义拍照会用到SurfaceView控件显示照片的预览区域,以下是布局文件: 两个TextView是用来显示提示信息和倒计时的 ...
- Android自定义View之倒计时Countdown实现
先看一下效果: 在点击OK键之后,开始倒计时. 实现步骤 1.新建Android工程"CountdownView" 2.自定义Drawable 自定义View并没有直接的用户交互, ...
- [转]Android实现计时与倒计时(限时抢购)的几种方法
在购物网站的促销活动中一般都有倒计时限制购物时间或者折扣的时间,这些都是如何实现的呢? 在一个安卓客户端项目中恰好遇到了类似的问题,一开始使用的是Timer与 TimerTask, 虽然此方法通用,但 ...
- Android基础之CountDownTimer 倒计时类
app常用的60s倒计时计时功能: private static final int TIME_LIMIT = 60; private void initView() { // 相关控件 mResen ...
- android 特卖列表倒计时卡顿问题
在Android的开发中,我们经常遇见倒计时的操作,通常使用Timer和Handler共同操作来完成.当然也可以使用Android系统控件CountDownTimer,这里我们封装成一个控件,也方便大 ...
- Android发送验证码的倒计时button
1 直接上图 2 原理 原理非常easy,就是把对应的倒计时逻辑等封装到一个控件中,并向外部提供接口. 3 代码 import java.util.Timer; import java.util.Ti ...
- Android实现多个倒计时优化与源代码分析
由于之前有个项目需求是须要时时刻去更新UI倒计时,之前想到的,这简单嘛,用计时或者Handler就能够搞定,并且性能也不错,可是需求要ListView,什么,?大量的View都须要,那Handle处理 ...
- Android CountDownTimer 类实现倒计时
本文用 Android 中的 CountDownTimer 类实现倒计时功能,类似输入手机号获得验证码.界面如下所示: 1. 点击 “开始计时” 按钮后开始进行倒计时, 2. 倒计时过程: 3. 时间 ...
- Android实现计时与倒计时(限时抢购)的几种方法
在购物网站的促销活动中一般都有倒计时限制购物时间或者折扣的时间,这些都是如何实现的呢? 在一个安卓客户端项目中恰好遇到了类似的问题,一开始使用的是Timer与 TimerTask, 虽然此方法通用,但 ...
随机推荐
- hdu 3236 二维背包
明天来一发 hdu 4501 算是这题的简化版吧
- ARM寻址方式,王明学learn
ARM寻址方式 所谓寻址方式就是处理器根据指令中给出的信息来找到指令所需操作数的方式. 一.立即数寻址 立即数寻址,是一种特殊的寻址方式,操作数本身就在指令中给出,只要取出指令也就取到了操作数.这个操 ...
- BNUOJ1067生成函数入门
https://www.bnuoj.com/v3/problem_show.php?pid=1067
- loadrunner解决在项目中的难点解决
代码如下: vuser_init() { lr_save_string("11041331\",\"11041372\",\"11041373\&qu ...
- 快速幂 fast_exp
long long fast_exp(int base,long long exp,int mod) { long long ans=1LL,a=base; ) { if(exp&1LL) a ...
- 纯css实现两列等高
<!doctype html> <html> <head> <meta /> <title>Title</title> < ...
- JS 中面向对象的5种写法
//第1种写法 function Circle(r) { this.r = r; } Circle.PI = 3.14159; Circle.prototype.area = function() { ...
- hdu 1078 FatMouse and Cheese
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission( ...
- JetS3t使用说明
http://blog.csdn.net/hitmediaman/article/details/6636402
- 并查集 + 线段树 LA 4730 Kingdom
题目传送门 题意:训练指南P248 分析:第一个操作可以用并查集实现,保存某集合的最小高度和最大高度以及城市个数.运用线段树成端更新来统计一个区间高度的个数,此时高度需要离散化.这题两种数据结构一起使 ...