【问题标题】:Wrong initial value of Chronometer计时表初始值错误
【发布时间】:2019-09-27 09:21:45
【问题描述】:

我编写了一个基于 android.widget.Chronometer 的简单国际象棋时钟应用程序。我将它与setCountDown(true) 标志一起使用,并且所有逻辑都运行良好。每个 Chronometer 在单独的Fragment 中创建。但有时精密时计初始值会出现一些问题。例如,我将初始值设置为 20 秒,但实际上我有这个: 并且在应用程序重新启动时,这种区分可能是在随机时钟上。我正在以这种方式设置初始值,在我的类中扩展android.widget.Chronometer,并且 mTimeLimit 每次等于 20000:

private void setTimeLimit() {
    mStartTime = SystemClock.elapsedRealtime() + mTimeLimit;
    setBase(mStartTime);
}

我认为问题可能在于片段创建时间等。谁知道我做错了什么?

【问题讨论】:

    标签: java android android-widget


    【解决方案1】:

    我通过在初始值上添加 100 毫秒来找到一个解决方案:

    mStartTime = SystemClock.elapsedRealtime() + mTimeLimit + 100;
    

    似乎它解决了一个问题,但我认为这不是一个最佳决定,也许有人知道更好的方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-05
      • 2012-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-03
      • 1970-01-01
      • 2014-03-01
      相关资源
      最近更新 更多