SpriteKit不播放音频文件?

问题描述:

我制作了一个自定义类SoundNode来处理音频文件的播放。现在,它只能播放默认的 “A2.mp3”SpriteKit不播放音频文件?

class SoundNode : SKSpriteNode{ 
func playSound(){ 
    run(SKAction.playSoundFileNamed("A2", waitForCompletion: false)) 
    } 
} 

我随后致电playSound方法在我SKScene像这样:

SoundNode().playSound() 

但是,声音从来不玩?我已经确定文件存在于我的项目中,并且还检查了文件名以确保它是正确的。这里有什么问题?

SoundNode是一种节点。每个节点只有在场景中才有效。只需创建一个SoundNode并调用playSound不会执行任何操作,因为该节点尚未添加到场景中!

为了使这项工作,只需将其添加到场景:

let node = SoundNode() 
self.addChild(node) 
node.playSound() 

另外,我建议SoundNode不应该继承SKSpriteNode,因为这显然不是一个精灵,即东西,可以在屏幕上看到。只是让它继承SKNode

+0

工作完美! –