【发布时间】:2018-11-14 11:37:42
【问题描述】:
I'm Running one count down timer for 15 minutes which is equals to 100%,
当我在应用程序中时,它对我来说很好。 我正在做的是当我关闭应用程序时,我正在保存开始时间并打开应用程序以当前时间并计算剩余时间。 在启动倒数计时器之前,我将剩余时间留给 ontick 方法。在第一个刻度上它显示正确,但对于下一个刻度,它从 15 分钟开始。谁能告诉它为什么会发生
countDownTimer = object : CountDownTimer(900000, 1000) {
override fun onTick(millisUntilFinished: Long) {
activity?.runOnUiThread {
val minutes = TimeUnit.MILLISECONDS.toMinutes(millisUntilFinished)
val seconds = TimeUnit.MILLISECONDS.toSeconds(millisUntilFinished) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millisUntilFinished))
val progress = 100 - ((((minutes / 15f) + (seconds / 900f)) * 100).toInt())
if (progress == 100) {
countDownTimer.cancel()
batteryHealthView.hideProgress()
}
saveData(progress, percentageString)
}
}
override fun onFinish() {
activity?.runOnUiThread {
countDownTimer.cancel()
}
}
}
if (timeLeft!! > 0) {
countDownTimer.onTick(timeLeft)
}
countDownTimer.start()
【问题讨论】:
标签: java android kotlin timer countdown