如何在Android中将计时器用作倒计时定时器

3
我已定义了一个计时器;
protected Chronometer chrono;
protected int baseTime;
protected int stopTime;
protected long elapsedTime;

我的程序会向用户询问问题,我希望根据用户的输入设置一个定时器。我想要一个从10到0开始的计时器。我应该如何做呢?

另外,我还希望在屏幕上显示剩余时间。

1个回答

8

请使用CountDownTImer代替此方法,

 new CountDownTimer(10000, 1000) { //Sets 10 second remaining

 public void onTick(long millisUntilFinished) {
     mTextView.setText("seconds remaining: " + millisUntilFinished / 1000);
 }

 public void onFinish() {
     mTextView.setText("done!");
 }
}.start();

注意:由于Chronometer小部件只能进行正向计数,因此无法反向启动Chronometer。

编辑:从API级别24开始,可以通过Chronometer#setCountDown(true)方法执行倒计时。


谢谢您先生!那么,我可以在屏幕上显示并为CountDownTimer设置位置和大小吗? - temre
@EmreŞen,你将把它显示在“TextView”上。可以轻松地放置在任何你喜欢的位置。不客气! - Shree Krishna
你需要在通知中使用计时器,否则你就得自己每秒更新推送通知 :/ 但是这样你就只能依赖于 Android +24 版本了。 - Kibotu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接