SpriteKit SKActions 与 NSTimers 中的定时函数
什么时候应该使用 SKAction
s 来执行定时器功能?几乎总是。这是因为 Sprite Kit
在更新间隔上运行,并且可以使用 speed
属性在整个生命周期内更改此间隔的速度。场景也可以暂停。由于 SKAction
s 在场景内部工作,当你更改这些属性时,无需更改时间函数。如果你的场景进入过程 0.5 秒,并且暂停场景,则无需停止任何定时器并保留 0.5 秒的差异。它会自动提供给你,因此当你取消暂停时,剩余时间将继续。
什么时候应该使用 NSTimer
s 来执行定时器功能?每当你有需要在 SKScene
环境之外定时的东西时,即使场景暂停也需要射击,或者即使场景速度改变也需要以恒定速率射击。
最适合使用 UIKit
控件和 SpriteKit
控件。由于 UIKit
不知道 SpriteKit
会发生什么,所以无论 tihuan 的状态如何,NSTimer
都会发射。一个例子是我们有一个 UILabel
每隔一秒接收一次更新,它需要来自你的 SKScene
内的数据。