接看这里吧,我只是搬运工。
定时执行在一段时候后停止的倒计时,在倒计时执行过程中会在固定间隔时间得到通知(译者:触发onTick方法),下面的例子显示在一个文本框中显示一个30s倒计时:
- new CountdownTimer(30000, 1000) {
- public void onTick(long millisUntilFinished) {
- mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);
- }
- public void onFinish() {
- mTextField.setText("done!");
- }
- }.start();
onTick的调用是同步的,保证这次调用不会在之前调用完成前发生。这里的同步机制主要是用来:onTick的实现需要很多时间执行比倒计时间隔更重要的事情。 构造函数 public CountDownTimer (long millisInFuture, long countDownInterval) 参数 millisInFuture 从开始调用start()到倒计时完成并onFinish()方法被调用的毫秒数。(译者注:倒计时时间,单位毫秒) countDownInterval 接收onTick(long)回调的间隔时间。(译者注:单位毫秒) 公共方法 public final void cancel () 取消倒计时(译者:取消后,再次启动会重新开始倒计时) public abstract void onFinish () 倒计时完成时被调用 public abstract void onTick (long millisUntilFinished) 固定间隔被调用 参数 millisUntilFinished 倒计时剩余时间。 public synchronized final CountDownTimer start () 启动倒计时
- import android.app.Activity;
- import android.os.Bundle;
- import android.os.CountDownTimer;
- import android.util.Log;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.widget.Button;
- import android.widget.TextView;
-
- import com.test.R;
-
- public class CountDownTimeActivity extends Activity implements OnClickListener {
-
- TextView mTextView;
- Button mButton1;
- Button mButton2;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
-
- setContentView(R.layout.countdown);
-
- mTextView = (TextView)findViewById(R.id.textView1);
- mButton1 = (Button)findViewById(R.id.button1);
- mButton2 = (Button)findViewById(R.id.button2);
- mButton1.setOnClickListener(this);
- mButton2.setOnClickListener(this);
- }
-
- CountDownTimer timer = new CountDownTimer(40000,1000) {
-
- @Override
- public void onTick(long millisUntilFinished) {
- mTextView.setText("seconds remaining: " + millisUntilFinished / 1000);
- try {
- Thread.sleep(1200);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- Log.e("CountDown",millisUntilFinished+"");
- }
-
- @Override
- public void onFinish() {
- mTextView.setText("done!");
- }
- };
-
- @Override
- public void onClick(View v) {
- switch(v.getId()){
- case R.id.button1:
- timer.start();
- break;
- case R.id.button2:
- timer.cancel();
- break;
- }
-
- }
- }
分享到:
相关推荐
关于倒计时CountDownTimer的简单测试工程.
验证码倒计时,退出Activity不停止倒计时,解决切换Activity后返回,计时器停止问题。(别人写的)
主要为大家详细介绍了Android实现倒计时CountDownTimer的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
android倒计时功能的实现(CountDownTimer)
通过CountDownTimer实现验证码倒计时效果,通过CountDownTimer实现验证码倒计时效果
主要用到的是Android 中有一个封装好的CountDownTimer类,可以直接调用实现倒计时效果。然后我在这个基础上加了两个Android Animation动画。原文地址:http://blog.csdn.net/donkor_/article/details/53305130
Android倒计时嵌套,倒计时1结束后启动倒计时2,倒计时2结束后启动另一个activity。Android studio工程。可在此基础上实现其他功能
以前编程的时候,遇到倒计时的功能时,经常自己去写,但其实Android已经帮封装好了一个倒计时类CountDownTimer。 现在发现了这个类CountDownTimer,和大家共享一下
内容:介绍倒计时CountDownTimer的基本使用方法。模拟短信验证 步骤: 1、继承CountDownTimer,重写onTick()、onFinish() 2、代码中new出CountDownTimer子类,传好参数,调用start()执行 代码如下: <?xml ...
倒计时的功能用到了CountDownTimer类,这是android的一个工具类。很巧妙 下面是这个类的原理解析,此类比较简单。但很强大。 博客地址:http://blog.csdn.net/pangzaifei/article/details/20723661
Android 倒计时——Timer和CountDownTimer的使用,实现启动,暂停,继续,重复,重设时长以及启动service后台倒计时,无需引入框架,只需重写封装原生类即可实现,非常轻量接入
使用了CountdownTimer实现短信验证码倒计时的效果,并解决了倒计时读数不准确的Bug。博客地址:http://blog.csdn.net/Lindroid20/article/details/73693102
CountDownTimer实现抢购倒计时
android 倒计时 发送激活码 CountDownTimer.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
自定义类似倒计时控件extends CountDownTimer
studio 倒计时计时器,抢购剩余时间,listview的item倒计时,封装CountDownTimer,复制utils到项目中直接调用,回调对应的view和剩余时间。
主要为大家详细介绍了Android倒计时神器CountDownTimer,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
主要使用的是NSTimer的scheduledTimerWithTimeInterval方法来每1秒执行一次timeFireMethod函数,timeFireMethod进行倒计时的一些操作,完成时把timer给invalidate掉就ok了,代码如下: secondsCountDown = 60...
android倒计时功能的实现(CountDownTimer).pdf