导航:首页 > 源码编译 > android倒计时源码

android倒计时源码

发布时间:2022-09-07 16:01:52

android中怎样设置倒计时

你好,
首先需要在输入框中输入一个秒数,比如:12,然后获取输入框中的值,显示在一个TextView中;点击“开始倒计时”按钮,每隔一秒钟,秒数减1,然后显示在TextView中;点击“停止倒计时”按钮,计时器停止运行,当再次点击“开始倒计时”按钮,计时器继续运行。

Ⅱ 怎么在android悬浮窗口上实现倒计时

public class XuanfuTestActivity extends Activity {
/** Called when the activity is first created. */
int num=10;
String text;
Button button;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

button=new Button(getApplicationContext());//这里不能写this 否则没有效果
WindowManager wmManager=(WindowManager)getApplicationContext(). getSystemService(Context.WINDOW_SERVICE);
WindowManager.LayoutParams params=new WindowManager.LayoutParams();
params.type=WindowManager.LayoutParams.TYPE_PHONE ;
params.type=2002;
params.flags=40;
params.width=50;
params.height=50;
wmManager.addView(button, params);
handler.sendEmptyMessageDelayed(1, 1000);
}
Handler handler=new Handler(){

public void handleMessage(android.os.Message msg) {
if (msg.what==1) {
text=""+num--;
button.setText(text);
}
if (num<=0) {
num=0;
}else {
handler.sendEmptyMessageDelayed(1, 1000);
}
};
};

}

Ⅲ android 怎么在button上添加倒计时

最简单的两种方法吧

  1. 开启一个定时器 (timer 、 countDownTimer) 然后每隔1s 通过handler 让button 里面的文字改变一下 就是倒计时了

  2. 基本跟第一个相同。自定义一个类 继承button 然后 里面写定时器 settext()


Ⅳ Android倒计时怎么实现

有三种实现方式:

第一种:通过Timer与TimerTask结合的方式进行实现
第二种:通过Handler与Message方式进行实现
第三种:通过CountdownTimer进行实现
示例
第一种:
timer.schele(task, 1000, 1000); // timeTask ,一秒执行一次,
TimerTask task = new TimerTask() {
@Override
public void run() {
}
}
第二种:
handler.sendMessageDelayed(message, 1000); //1秒后发送消息
final Handler handler = new Handler(){
public void handleMessage(Message msg){ // handle message
switch (msg.what) {
case 1:
recLen--;
if(recLen > 0){ //如果倒计时没到
Message message = handler.obtainMessage(1);
handler.sendMessageDelayed(message, 1000); // 1秒后发送消息
}
}
super.handleMessage(msg);
}
};
第三种:
new CountdownTimer(30000, 1000) { //30秒倒计时,没秒执行一次
public void onTick(long millisUntilFinished) { //每秒执行一次进该方法
mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);
}
public void onFinish() { //倒计时结束。
mTextField.setText("done!");
}
}.start();

Ⅳ 哪位大大给小弟一个有计时和倒计时功能的android秒表源码学习学习,拜谢了。

这个 也太简单了吧

Ⅵ android studio怎么实现倒计时

以自动实现KeyEvent.Callback接口为例子启动AndroidStudio,打开demo工程增加实现KeyEvent.Callback的类使用Alt+Enter快捷键把光标定位到接口名按Alt+Enter,并点击"Implementmethods"菜单项在弹出的“SelectMethodstoImplement”对话框中,点击OK按钮这样就可以实现所有的接口函数了。使用菜单实现接口方法把光标定位到接口名,执行菜单“Code”-“ImplementMethods”在弹出的“SelectMethodstoImplement”对话框中,点击OK按钮这样就可以实现所有的接口函数了

Ⅶ android中怎么实现倒计时怎么按照小时分钟

Android实现计时与倒计时的五种方法:

方法一
Handler与Message(不用TimerTask)

public class timerTask extends Activity{
private int recLen = 11;
private TextView txtView;

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.timertask);
txtView = (TextView)findViewById(R.id.txttime);

Message message = handler.obtainMessage(1); // Message
handler.sendMessageDelayed(message, 1000);
}

final Handler handler = new Handler(){

public void handleMessage(Message msg){ // handle message
switch (msg.what) {
case 1:
recLen--;
txtView.setText("" + recLen);

if(recLen > 0){
Message message = handler.obtainMessage(1);
handler.sendMessageDelayed(message, 1000); // send message
}else{
txtView.setVisibility(View.GONE);
}
}

super.handleMessage(msg);
}
};
}
linux

方法二
Handler与Thread(不占用UI线程)

public class timerTask extends Activity{
private int recLen = 0;
private TextView txtView;

public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);

setContentView(R.layout.timertask);
txtView = (TextView)findViewById(R.id.txttime);

new Thread(new MyThread()).start(); // start thread
}

final Handler handler = new Handler(){ // handle
public void handleMessage(Message msg){
switch (msg.what) {
case 1:
recLen++;
txtView.setText("" + recLen);
}
super.handleMessage(msg);
}
};

public class MyThread implements Runnable{ // thread
@Override
public void run(){
while(true){
try{
Thread.sleep(1000); // sleep 1000ms
Message message = new Message();
message.what = 1;
handler.sendMessage(message);
}catch (Exception e) {
}
}
}
}
}

方法三
Timer与TimerTask(java实现)

public class timerTask extends Activity{

private int recLen = 11;
private TextView txtView;
Timer timer = new Timer();

public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);

setContentView(R.layout.timertask);
txtView = (TextView)findViewById(R.id.txttime);

timer.schele(task, 1000, 1000); // timeTask
}

TimerTask task = new TimerTask() {
@Override
public void run() {

runOnUiThread(new Runnable() { // UI thread
@Override
public void run() {
recLen--;
txtView.setText(""+recLen);
if(recLen < 0){
timer.cancel();
txtView.setVisibility(View.GONE);
}
}
});
}
};
}
方法四
TimerTask与Handler(不用Timer的改进型)

public class timerTask extends Activity{
private int recLen = 11;
private TextView txtView;
Timer timer = new Timer();

public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);

setContentView(R.layout.timertask);
txtView = (TextView)findViewById(R.id.txttime);

timer.schele(task, 1000, 1000); // timeTask
}

final Handler handler = new Handler(){
@Override
public void handleMessage(Message msg){
switch (msg.what) {
case 1:
txtView.setText(""+recLen);
if(recLen < 0){
timer.cancel();
txtView.setVisibility(View.GONE);
}
}
}
};

TimerTask task = new TimerTask() {
@Override
public void run() {
recLen--;
Message message = new Message();
message.what = 1;
handler.sendMessage(message);
}
};
}
方法五
Handler与Runnable(最简单型)

public class timerTask extends Activity{
private int recLen = 0;
private TextView txtView;

public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);

setContentView(R.layout.timertask);
txtView = (TextView)findViewById(R.id.txttime);

handler.postDelayed(runnable, 1000);
}

Handler handler = new Handler();
Runnable runnable = new Runnable() {
@Override
public void run() {
recLen++;
txtView.setText("" + recLen);
handler.postDelayed(this, 1000);
}
};
}
计时与倒计时

方法1,方法2和方法3,都是倒计时

方法4,方法5,都是计时

计时和倒计时,都可使用上述方法实现(代码稍加改动)

UI线程比较

方法1,方法2和方法3,都是在UI线程实现的计时;

方法4和方法5,是另开Runnable线程实现计时

实现方式比较

方法1,采用的是Java实现,即Timer和TimerTask方式;

其它四种方法,都采用了Handler消息处理

推荐使用

如果对UI线程交互要求不很高,可以选择方法2和方法3

如果考虑到UI线程阻塞,严重影响到用户体验,推荐使用方法4,另起线程单独用于计时和其它的逻辑处理

方法5,综合了前几种方法的优点,是最简的

Ⅷ android 用 service 和 CountDownTimer 实现一个倒计时器的功能

在平时我们编程的时候,经常会用到倒计时这个功能,很多人不知道Android已经帮封装好了一个类,往往都自己写。现在发现了这个类,大家共享一下:

在一个TextView不断显示剩下的时间,代码如下:

[java] view plain
private TextView vertifyView;
private CountDownTimer timer = new CountDownTimer(10000, 1000) {

@Override
public void onTick(long millisUntilFinished) {
vertifyView.setText((millisUntilFinished / 1000) + "秒后可重发");
}

@Override
public void onFinish() {
vertifyView.setEnabled(true);
vertifyView.setText("获取验证码");
}
};
调用的时候很简单:timer.start();
最后说明一下:CountDownTimer timer = new CountDownTimer(10000, 1000)中,第一个参数表示总时间,第二个参数表示间隔时间。意思就是每隔一秒会回调一次方法onTick,然后10秒之后会回调onFinish方法。

Ⅸ Android开发CountDownTimer终止倒计时

/ timer Util
/* 定义一个倒计时的内部类 */
class TimeCount extends CountDownTimer { public TimeCount(long millisInFuture, long countDownInterval) { super(millisInFuture, countDownInterval);// 参数依次为总时长,和计时的时间间隔 }

@Override public void onFinish() {// 计时完毕时触发
checking.setText("重新验证");
checking.setClickable(true);
}

@Override public void onTick(long millisUntilFinished) {// 计时过程显示
checking.setClickable(false);
checking.setText(millisUntilFinished / 1000 + "秒");
}
}

Ⅹ android中使用chronometer怎样创建倒计时器问题

在Android中,可以使用计时器来实现对时间的监测,这个类所实现的功能有开始计时,停止计时,重新计时,设置计时模式,下面列出计时器方法的原型:
long getBase();//返回基地的时间,由setBase(long)设置的
String getFormat();//返回当前字符串格式,此格式是通过setFormat()实现的
void setBase(long base);//设置时间,计数定时器指定的值
void setFormat(String format);//设置显示的内容,计时器将会显示这个参数所对应的值得,如果字符串的值
//为null,那么返回的值为MM:SS格式的
下面就来介绍一个实例:
package com.example.android.apis.view;

// Need the following import to get access to the app resources, since this
// class is in a sub-package.
import com.example.android.apis.R;

import android.app.Activity;
import android.os.Bundle;
import android.os.SystemClock;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Chronometer;

public class ChronometerDemo extends Activity {
Chronometer mChronometer;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.chronometer);

Button button;

mChronometer = (Chronometer) findViewById(R.id.chronometer);

// Watch for button clicks.
button = (Button) findViewById(R.id.start);
button.setOnClickListener(mStartListener);//对应的是开始计时

button = (Button) findViewById(R.id.stop);
button.setOnClickListener(mStopListener); //对应的是停止计时

button = (Button) findViewById(R.id.reset);
button.setOnClickListener(mResetListener);//对应的是重新置数

button = (Button) findViewById(R.id.set_format);
button.setOnClickListener(mSetFormatListener);//对应的是设置时间的显示格式

button = (Button) findViewById(R.id.clear_format);
button.setOnClickListener(mClearFormatListener);//对应的是使用非格式的计时显示功能
}

View.OnClickListener mStartListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.start();
}
};

View.OnClickListener mStopListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.stop();
}
};

View.OnClickListener mResetListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.setBase(SystemClock.elapsedRealtime());
}
};

View.OnClickListener mSetFormatListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.setFormat("Formatted time (%s)");
}
};

View.OnClickListener mClearFormatListener = new OnClickListener() {
public void onClick(View v) {
mChronometer.setFormat(null);
}
};
}

阅读全文

与android倒计时源码相关的资料

热点内容
安卓项目部署到阿里云服务器 浏览:984
绿巨人视频app下载怎么用 浏览:736
android源码打包下载 浏览:693
卖服务器送什么 浏览:98
留言板分页php 浏览:288
jasperreportpdf 浏览:420
数据挖掘k中心点算法 浏览:543
程序员3年胖30斤 浏览:666
安卓系统课件如何转换微软 浏览:882
大数据有哪些算法 浏览:26
单片机如何焊接pcb 浏览:790
治愈网站源码 浏览:900
手机如何录入加密小区门禁卡软件 浏览:475
看游泳馆的课程用什么APP 浏览:235
北方租房用什么app 浏览:941
java水费管理系统源码 浏览:523
百思不得姐网站源码 浏览:816
java显示控制台 浏览:544
查新车报价哪个app最准 浏览:391
石油天然气压缩机 浏览:512