问题描述
我正在尝试添加countDownTimer,这是可行的(只要curTime
在endTime
之前),我确实收到了“完成”消息。我的目标是完成后想重新启动计时器。如果我将counter.start();
注释掉,它将崩溃:Attempt to invoke virtual method 'android.os.CountDownTimer android.os.CountDownTimer.start()' on a null object reference
有什么建议吗?
public void loadCountDownTodaysLikes() {
SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
String curTime = SharedPrefManager.getCurTime();
String endTime = "21:01:20";
Date curTimeD,endTimeD;
try {
curTimeD = formatter.parse(curTime);
endTimeD = formatter.parse(endTime);
long curLong = curTimeD.getTime();
long endLong = endTimeD.getTime();
diff = endLong - curLong;
} catch (ParseException e) {
e.printStackTrace();
}
counter = new CountDownTimer(diff,1000) {
public void onTick(long millisUntilFinished) {
long millis = millisUntilFinished;
String hms =
(TimeUnit.MILLISECONDS.toHours(millis) - TimeUnit.DAYS.toHours(TimeUnit.MILLISECONDS.toDays(millis)) + " : ")
+ (TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis)) + " : "
+ (TimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis))));
countDownTodays.setText("Resetting in: " + hms);
}
public void onFinish() {
countDownTodays.setText("finished!");
//counter.start();
}
}
.start();
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)