我试图在发生特定事件时执行 2 个动作,一个是在触发具有固定间隔的计时器时发生的动画,另一个也是在检测到触摸时发生的动画
两个 r 单独工作正常,但是当同时发生时,动画中的任何一个都会变慢。它因为在给定的时间单位只执行一个动作
对于 NSTimer im 使用 0.01s 的时间间隔
如何在不减慢任何动画速度的情况下使这种情况工作?
我试图在发生特定事件时执行 2 个动作,一个是在触发具有固定间隔的计时器时发生的动画,另一个也是在检测到触摸时发生的动画
两个 r 单独工作正常,但是当同时发生时,动画中的任何一个都会变慢。它因为在给定的时间单位只执行一个动作
对于 NSTimer im 使用 0.01s 的时间间隔
如何在不减慢任何动画速度的情况下使这种情况工作?
NSTimer 不是执行动画的工具。Core Animation是您想要解决 iPhone 上几乎所有动画问题的工具。NSTimer 不是实时定时器。它不能保证何时触发。它是解决许多问题的绝佳工具;动画不是其中之一。
触摸拒绝响应通常表示 CPU 压力过大。每秒动画 100 次可能是造成这种情况的原因。
当触摸动画正在进行时,我也会停止计时器触发。您可以调用 [timer invalidate] 来停止计时器触发。也许这会奏效?不过,0.05 的时间间隔会更合理 - 并且可以完全解决问题!祝你好运!