我正在尝试将计时器集成到我的白噪音应用程序中。
该应用程序有4个按钮来设置不同的曲调,以及4个功能按钮:播放/暂停、停止、一小时和三小时。这最后两个按钮是以倒计时模式运行的。
该应用程序有4个按钮来设置不同的曲调,以及4个功能按钮:播放/暂停、停止、一小时和三小时。这最后两个按钮是以倒计时模式运行的。
private Chronometer chronometer;
private boolean running;
private long pauseOffset;
switch (v.getId()) {
case R.id.play_button:
if (choosenAudio.isPlaying()) {
//logic here
pauseChronometer();
break;
}
else {
//logic here
startChronometer();
break;
}
case R.id.stop_button:
//logic here
resetChronometer();
chronometer.setCountDown(false);
chronometer.stop();
break;
case R.id.one_hour:
//logic here
chronometer.setCountDown(true);
chronometer.setBase(SystemClock.elapsedRealtime() + 3600000);
pauseOffset = 0;
chronometer.start();
break;
case R.id.three_hours:
//logic here
chronometer.setCountDown(true);
chronometer.setBase(SystemClock.elapsedRealtime() + 10800000);
pauseOffset = 0;
chronometer.start();
break;
default:
break;
}
我的方法:
public void startChronometer() {
if (!running) {chronometer.setBase(SystemClock.elapsedRealtime() - pauseOffset);
chronometer.start();
running = true;
}
}
public void pauseChronometer() {
if (running) {
chronometer.stop();
pauseOffset = SystemClock.elapsedRealtime() - chronometer.getBase();
running = false;
}
}
public void resetChronometer() {
chronometer.setBase(SystemClock.elapsedRealtime());
pauseOffset = 0;
}
我的问题:
当倒计时时间达到 00:00 时,我该如何检测并做某些事情(比如停止音乐)?
谢谢大家!