最近我正在研究一个也计算毫秒的秒表。我阅读的文章表明,没有必要 每 1/10 秒更新计时器 TextView ,因为那是我们的眼睛可以注册图像的时间。这是每个秒表应用程序的工作方式吗?甚至是所有安卓设备上的内置秒表?
如果应用程序可以精确到每毫秒显示一次,请建议一种方法,因为我被卡住了。
我已经开发了Android上领先的秒表之一,并且更新运行显示1/10秒最大精度的建议是正确的。更新屏幕以获得不可读的值没有意义...这样做只会使您的 UI 滞后。
我还建议:
- 捕获系统时间作为事件侦听器中的第一个操作。
- 在触摸按钮而不是按下按钮时触发事件。对于毫秒级精度,它必须是第一次接触。
- 使用基于事件的持久性模型。
如果您过于频繁地更新文本视图,它将是不可读的模糊。我不能代表所有秒表应用程序(没有人可以(,但我可以说我所看到的是显示以下内容的应用程序:
0.1
0.2
0.3
0.4
0.5
然后,只有当您停止计时器时,您才会看到完整的毫秒值:
0.5432
在计时器运行时显示所有这些小数位没有任何好处。
另请注意,由于屏幕刷新率通常限制为 60 fps,因此无法在运行时显示每个毫秒值。