gpt4 book ai didi

ios - "Calibrate"用于 UI 更新的 NSTimer

转载 作者:行者123 更新时间:2023-11-29 10:33:53 26 4
gpt4 key购买 nike

我正在尝试为我的程序实现倒计时功能。这是一个秒计时器,所以我使用一个时间间隔为 1.0 秒的 NSTimer 对象来更新 UI。但为了不累积误差(每1.0秒间隔会产生一点延迟),程序会计算当前时间与开始时间之间的绝对差值,以计算UI中显示的剩余时间。

问题是,在 NSTimer 对象运行了很长时间(比如半小时)后,由于累积错误,它不再与绝对时间“同步”:UI 更新发生在两个“绝对”秒。例如,如果倒计时从 00:00:00.000 开始,则首先 UI 在 00:00:01.000 更新,00:00:02.000 ...但过了一会儿它变成了 00:30:03.567 或类似的东西。

知道我该如何处理吗?还有其他更好的方法来实现这个吗?谢谢!

最佳答案

一个高级的想法是根据您的绝对时间计算来检测计时器何时过于不同步。当它超过一个特定的阈值时,比如 0.01 秒或任何你想要的,取消当前计时器并在适当的延迟后启动一个新的计时器,使其恢复“同步”。

关于ios - "Calibrate"用于 UI 更新的 NSTimer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28080493/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com