`

android倒计时功能的实现(CountDownTimer)

 
阅读更多

   在逛论坛的时候,看到一个网友提问,说到了CountDownTimer这个类,从名字上面大家就可以看出来,记录下载时间。将后台线程的创建和Handler队列封装成一个方便的类调用。

 

     查看了一下官方文档,这个类及其简单,只有四个方法,上面都涉及到了onTick,onFinsh、cancel和start。其中前面两个是抽象方法,所以要重写一下。
          下面是官方给的一个小例子:

 new CountdownTimer(30000, 1000) {
     public void onTick(long millisUntilFinished) {
         mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);
     }
     public void onFinish() {
         mTextField.setText("done!");
     }
  }.start();

 直接用的那位网友的代码,自己稍微改动了一下一个简单的小demo。

package cn.demo;

import android.app.Activity;
import android.os.Bundle;
import android.content.Intent;
import android.os.CountDownTimer;
import android.widget.TextView;
import android.widget.Toast;
public class NewActivity extends Activity {
	private MyCount mc;
	private TextView tv;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		tv = (TextView)findViewById(R.id.show);
		mc = new MyCount(30000, 1000);
		mc.start();
	}//end func

	/*定义一个倒计时的内部类*/
	class MyCount extends CountDownTimer {   
		public MyCount(long millisInFuture, long countDownInterval) {   
			super(millisInFuture, countDownInterval);   
		}   
		@Override   
		public void onFinish() {   
			tv.setText("finish");      
		}   
		@Override   
		public void onTick(long millisUntilFinished) {   
			tv.setText("请等待30秒(" + millisUntilFinished / 1000 + ")...");   
			Toast.makeText(NewActivity.this, millisUntilFinished / 1000 + "", Toast.LENGTH_LONG).show();//toast有显示时间延迟     
		}  
	}   
}
  主要是重写onTick和onFinsh这两个方法,onFinish()中的代码是计时器结束的时候要做的事情;onTick(Long m)中的代码是你倒计时开始时要做的事情,参数m是直到完成的时间,构造方法MyCount()中的两个参数中,前者是倒计的时间数,后者是倒计每秒中间的间隔时间,都是以毫秒为单位。例如要倒计时30秒,每秒中间间隔时间是1秒,两个参数可以这样写MyCount(30000,1000)。 将后台线程的创建和Handler队列封装成为了一个方便的类调用。

当你想取消的时候使用mc.cancel()方法就行了。

 

http://blog.csdn.net/aomandeshangxiao/article/details/6941724

 

分享到:
评论

相关推荐

    Android倒计时功能的实现(CountDownTimer)

    Android SDK 提供了一个便捷的类 `CountDownTimer`,用于实现倒计时逻辑,大大简化了开发者的工作。下面将详细介绍如何使用 `CountDownTimer` 类来实现倒计时功能。 `CountDownTimer` 是一个抽象类,它提供了两个...

    Android 倒计时——Timer和CountDownTimer的使用,实现启动,暂停,继续,重复,重设时长以及启动service后台倒计时

    综上所述,Android的`Timer`和`CountDownTimer`提供了丰富的倒计时功能,通过适当封装和扩展,我们可以轻松实现各种复杂的倒计时需求,包括启动、暂停、继续、重复和后台运行。在实际项目中,根据具体场景选择合适的...

    android倒计时功能的实现(CountDownTimer).pdf

    在Android开发中,倒计时功能是一个常见的需求,比如用于计时器、倒计时提醒等场景。Android SDK 提供了一个便捷的类 `CountDownTimer` 来实现这一功能。这个类将后台线程的创建和消息处理逻辑进行了封装,使得...

    Android CountdownTimer倒计时

    本项目"Android CountdownTimer倒计时"着重展示了如何在Android Studio中实现一个嵌套的倒计时功能,并在倒计时结束后触发特定的操作,例如启动新的Activity。 `CountdownTimer`是Android SDK中的一个类,用于执行...

    Android demo倒计时原理(CountDownTimer)

    倒计时的功能用到了CountDownTimer类,这是android的一个工具类。很巧妙 下面是这个类的原理解析,此类比较简单。但很强大。 博客地址:http://blog.csdn.net/pangzaifei/article/details/20723661

    android倒计时的简单实现

    本篇文章将详细介绍如何在Android应用中使用CountDownTimer类来实现一个简单的倒计时功能。 CountDownTimer是Android SDK提供的一种用于执行周期性任务的工具类,它能帮助我们轻松地创建一个从特定时间开始到零的倒...

    Android-Android开发小功能倒计时的实现。时间计时器倒计时功能。

    在Android应用开发中,倒计时(CountDownTimer)是一个常用的小功能,它通常用于创建时间计时器,比如赛事倒计时、闹钟、定时提醒等。本篇将详细介绍如何在Android中实现一个倒计时功能,并探讨相关的关键知识点。 ...

    Android倒计时 Android仿京东倒计时 Android商城倒计时

    本项目"Android倒计时 Android仿京东倒计时 Android商城倒计时"正是针对这种需求而设计的,通过实现一个定制化的倒计时组件,开发者可以方便地在自己的应用中添加类似功能。 首先,`CountDownTimer`是Android SDK...

    Android倒计时功能的实现

    本文将详细讲解如何在Android中实现倒计时功能,主要使用`CountDownTimer`类来完成。 首先,`CountDownTimer`是Android SDK提供的一种方便的倒计时工具类,它允许开发者在指定的间隔时间后执行特定的操作,直到达到...

    android实现倒计时

    总之,Android通过`CountDownTimer`提供了简单易用的倒计时解决方案,开发者可以根据自己的需求进行定制,以实现各种倒计时功能。在实际项目中,结合UI设计和用户体验,可以创造出高效且直观的倒计时组件。

    Android-用kotlin实现的纯粹倒计时应用

    在Android中,倒计时功能通常通过`CountDownTimer`类实现。这是一个抽象类,需要我们覆盖它的`onTick`和`onFinish`方法,`onTick`在每间隔一定毫秒时调用,`onFinish`在倒计时结束时调用。项目中可能通过创建一个...

    android的3秒倒计时关闭界面或点击关闭

    在Android应用开发中,有时我们需要实现一种功能,即在用户界面上显示3秒倒计时,用户可以选择在倒计时结束前点击界面来取消自动关闭,或者等待倒计时结束后,程序自动关闭界面。这样的设计可以增加用户体验,给用户...

    Android倒计时神器(CountDownTimer)

    在实际开发中,我们可以使用 CountDownTimer 来实现验证码倒计时、游戏倒计时、倒计时显示等功能。只需将 CountDownTimer 用于实现倒计时的逻辑,并在合适的时机调用 start() 方法启动计时器,并在适合的时机调用 ...

    android倒计时代码

    总之,Android中的倒计时功能通过`CountDownTimer`类实现,可以方便地应用于视频播放器、歌曲倒计时等多种场景。通过灵活地组合和定制`onTick()`和`onFinish()`方法,你可以满足各种复杂的需求。在实际开发中,记得...

    安卓天气日历时间选择倒计时相关-android倒计时发送激活码CountDownTimer.rar

    本资源“安卓天气日历时间选择倒计时相关-android倒计时发送激活码CountDownTimer.rar”主要关注的是Android的倒计时功能,特别是使用CountDownTimer类来实现这一功能,并可能涉及激活码的发送机制。 ...

    Android 倒计时实现源码.zip

    在Android开发中,倒计时(CountDownTimer)是一个常用的功能,它经常被用于各种应用场景,比如验证码的有效期倒计时、活动开启的倒计时等。本篇将基于提供的"Android 倒计时实现源码.zip"来详细解析Android倒计时的...

    安卓天气日历时间选择倒计时相关-android倒计时!倒计时多久刷新一次UI.rar

    在Android中,倒计时功能通常通过`CountDownTimer`类来实现。这个类允许开发者设定一个总时间和间隔时间,然后在指定的时间间隔内回调两个方法:`onTick(long millisUntilFinished)` 和 `onFinish()`。`onTick`方法...

    android简易倒计时器

    在Android开发中,倒计时器(CountDownTimer)是一个常用的功能,用于实现从一个给定的时间点开始倒计时的逻辑。这个“android简易倒计时器”应该是一个简单的实现,适合初学者理解并应用到自己的项目中。在本文中,...

    倒计时CountDownTimer的使用

    在本项目“倒计时CountDownTimer的使用”中,我们将深入探讨如何在Android应用程序中有效地运用这个组件。 CountDownTimer类是Android SDK提供的一种内置定时器,它允许开发者设置一个起始时间和间隔时间,然后按照...

Global site tag (gtag.js) - Google Analytics