我正在编写一个基于 android.widget.Chronometer 的简单国际象棋时钟应用程序。我将它与 setCountDown(true)
标志一起使用,所有逻辑都运行良好。每个 Chronometer 在单独的 Fragment
中创建。但有时计时表初始值会出现一些问题。例如,我将初始值设置为 20 秒,但实际上我有这个:
在应用程序重新启动时,这种区分可能是在随机时钟上进行的。我以这种方式设置初始值,在我的类中扩展 android.widget.Chronometer
,并且每次 mTimeLimit 等于 20000:
private void setTimeLimit() {
mStartTime = SystemClock.elapsedRealtime() + mTimeLimit;
setBase(mStartTime);
}
我认为问题可能出在 fragment 创建时间等方面。谁知道我错了什么?
最佳答案
我通过在初始值上增加 100 毫秒找到一个解决方案:
mStartTime = SystemClock.elapsedRealtime() + mTimeLimit + 100;
似乎它解决了一个问题,但我认为这不是最好的决定,也许有人知道更好的方法。
关于java - Chronometer 初始值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58131582/