问题 我在使用 android 开发时遇到停止计时器的问题。
停止计时器时,计时器已经为空。
timer.cancel();
然后我将定时器初始化移动到一个方法之外,就像 TimerTask 一样,它解决了 null 问题,但在调用它时仍然不会取消。
下面的代码是停止录制时计时器已经为空的示例。
定时器任务
我TimerTask
在类内部但在方法和下面的代码之外初始化......
private TimerTask task = new TimerTask() {
@Override
public void run() {
Log.e("TRACK_RECORDING_SERVICE","Timer Running");
}
};
定时器和定时器启动
然后我有一个 startRecroding 方法,当我想启动计时器时调用它......
public void startRecording(){
timer = new Timer("Message Timer");
timer.scheduleAtFixedRate(this.task, 0, 1000);
}
定时器停止
然后,当我想停止计时器时,我会调用以下方法...
public void stopRecording() {
if (timer != null) {
timer.cancel();
timer = null;
} else {
Log.e("TRACK_RECORDING_SERVICE","Timer already null.");
}
}
任何帮助将非常感激。