SpriteKit не воспроизводит аудиофайл?
Я создал пользовательский класс SoundNode для управления воспроизведением аудиофайлов. На данный момент, он играет только по умолчанию "A2.mp3"
class SoundNode : SKSpriteNode{
func playSound(){
run(SKAction.playSoundFileNamed("A2", waitForCompletion: false))
}
}
Затем я вызываю метод playSound в моем SKScene следующим образом:
SoundNode().playSound()
Но звук никогда не играет?? Я убедился, что файл существует в моем проекте, а также дважды проверил имя файла, чтобы убедиться в его правильности. В чем здесь проблема?
1 ответ
SoundNode
это своего рода узел. Каждый узел работает только тогда, когда он находится в сцене. Просто создаю SoundNode
и звонит playSound
ничего не делает, потому что узел не был добавлен в сцену!
Чтобы сделать эту работу, просто добавьте ее на сцену:
let node = SoundNode()
self.addChild(node)
node.playSound()
Кроме того, я предлагаю SoundNode
не должен наследовать SKSpriteNode
потому что это явно не спрайт, то есть то, что можно увидеть на экране. Просто сделай это наследником SKNode
,