1:Android CountDownTimer是安卓自带的倒计时类,本示例中将介绍如何在java的android中实现倒计时3秒的方法,代码如下:
new CountDownTimer(30000, 1000) {
public void onTick(long millisUntilFinished) {
mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);
}
public void onFinish() {
mTextField.setText("done!");
}
}.start();2:android倒计时还可以用到Handler来实现倒计时,代码如下:
public class MainActivity extends AppCompatActivity {
/**
* 倒计时标记
*/
public static final int COUNTDOWN_TIME_CODE = 99999;
/**
* 倒计时间隔
*/
public static final int DELAY_MILLIS = 1000;
/**
* 倒计时最大值,如倒计时3秒
*/
public static final int MAX_COUNT = 3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//创建一个handler类
CountdownTimeHandler handler = new CountdownTimeHandler();
//新建一个message
Message message = Message.obtain();
message.what = COUNTDOWN_TIME_CODE;
message.arg1 = MAX_COUNT;
//第一次发送message
handler.sendMessageDelayed(message, DELAY_MILLIS);
}
public static class CountdownTimeHandler extends Handler {
/**
* 倒计时最小值
*/
public static final int MIN_COUNT = 0;
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case COUNTDOWN_TIME_CODE:
int value = msg.arg1;
System.out.println(String.valueOf(value--));
//循环发送消息的控制
if (value >= MIN_COUNT) {
Message message = Message.obtain();
message.what = COUNTDOWN_TIME_CODE;
message.arg1 = value;
sendMessageDelayed(message, DELAY_MILLIS);
}
break;
}
}
}
}Android倒计时方法非常简单吧!