我正在用Java编写一个简单的计时器。它具有启动和停止按钮,以及文本视图,显示自定时器启动以来经过了多长时间。如何从系统时间获得时间增量?
它通过在System.currentTimeMillis()
中设置初始时间并在循环中每秒更新当前值来实现。
问题是,如果我在计时器运行时更改系统时间,则整个测量将失败。例如,如果我将时间设置回一个月,则计时器显示负值,因为currentTimeMillis()
现在返回比初始值更小的值。
那么,我该如何计算时间增量,这将与系统时间无关?让这个解决方案跨平台也会很好。
请发表你试过的代码。 – asgs