【问题标题】:Timer 1 ms resolution for iOSiOS 的定时器 1 毫秒分辨率
【发布时间】:2011-08-03 23:42:20
【问题描述】:

在我的应用程序中,我有一个需要在屏幕上移动的对象(汽车图像)。 如果可能的话,我需要每 1ms 安排一次 myFunction 。 我阅读了苹果文档,了解到 NSTimer 分辨率限制为 50-100 毫秒,这对于我的用例(在屏幕上快速移动对象)来说是不够的。

NSTimer 对象的替代方案是什么?

提前致谢。

【问题讨论】:

  • 您真的需要 1000 fps 的帧速率吗?即使您可以安排一个计时器来执行此操作,您是否能够如此快速地更新屏幕上的对象?
  • @highlycaffeinated,沿 iphone 屏幕 (480px) 移动对象(即从 position.x = 0 到 Position.x = 480,增加 1px),帧速率为 50ms(使用计时器时间间隔为 0.050 秒)我需要 25 秒?!

标签: iphone nstimer resolution cadisplaylink


【解决方案1】:

我认为您可能试图以太精细的时间速率显示事物。屏幕刷新的速度没有那么快,因此以该频率触发计时器也无济于事。

有关计时图形,请查看CADisplayLink 类,该类在需要刷新屏幕时调用选择器。即基于显示刷新率的计时器。

【讨论】:

  • 我正在寻找应用程序用于移动对象(如赛车)的类,我认为它们能够尽可能快地移动对象(移动意味着刷新对象位置,平滑帧不抖动) .如果 CADisplayLink 是使用的,我会试一试并告诉你。
猜你喜欢
  • 2012-11-12
  • 2018-06-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-06
  • 1970-01-01
  • 1970-01-01
  • 2011-11-06
  • 1970-01-01
相关资源
最近更新 更多