SpriteKit SKActions 与 NSTimers 中的定时函数

什么时候应该使用 SKActions 来执行定时器功能?几乎总是。这是因为 Sprite Kit 在更新间隔上运行,并且可以使用 speed 属性在整个生命周期内更改此间隔的速度。场景也可以暂停。由于 SKActions 在场景内部工作,当你更改这些属性时,无需更改时间函数。如果你的场景进入过程 0.5 秒,并且暂停场景,则无需停止任何定时器并保留 0.5 秒的差异。它会自动提供给你,因此当你取消暂停时,剩余时间将继续。

什么时候应该使用 NSTimers 来执行定时器功能?每当你有需要在 SKScene 环境之外定时的东西时,即使场景暂停也需要射击,或者即使场景速度改变也需要以恒定速率射击。

最适合使用 UIKit 控件和 SpriteKit 控件。由于 UIKit 不知道 SpriteKit 会发生什么,所以无论 tihuan 的状态如何,NSTimer 都会发射。一个例子是我们有一个 UILabel 每隔一秒接收一次更新,它需要来自你的 SKScene 内的数据。