在SpriteKit Swift 3中停止/暂停设置为永久重复的声音

时间:2016-10-04 15:52:18

标签: ios xcode audio sprite-kit swift3

我遇到了问题,如果有人可以提供帮助,我会非常喜欢它,基本上我有两个声音的序列可以永远重复。但是,我想要它,以便我可以触发声音停止。

我真正需要知道的是:

在Swift 3 SpriteKit中,我使用什么代码来无限期地停止或暂停重复的声音序列?

编辑:我正在使用SKActions播放声音,问题现在已经解决了。

1 个答案:

答案 0 :(得分:3)

总是很好的做法,在堆栈溢出时显示一些代码,当前的问题我们只能猜测。

如果您正在使用SKActions作为声音,则可以为重复操作指定一个键并稍后删除该操作。像这样创建密钥

 class GameScene: SKScene {

       let soundKey = "RemoveSoundKey" // this avoids typos
 }

而不是将你的行动改为

 let repeatAction = SKAction.repeatActionForever(YOURSOUNDACTION)
 run(repeatAction, withKey: soundKey)

比你能说的

 removeAction(forKey: soundKey)

当你想要停止重复动作时。

注意:如果您在节点上运行操作,例如

 player.run(repeatAction...)

别忘了在节点上调用删除操作

 player.removeAction(forKey: soundKey)

希望这有帮助