-1

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

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

然后我在我的 SKScene 中调用playSound方法,如下所示:

SoundNode().playSound()

但是,声音永远不会播放?我已确保该文件存在于我的项目中,并且还仔细检查了文件名以确保它是正确的。这里有什么问题?

4

1 回答 1

2

SoundNode是一种节点。每个节点仅在它位于场景中时才起作用。仅仅创建一个SoundNode并调用playSound并没有做任何事情,因为节点还没有被添加到场景中!

要完成这项工作,只需将其添加到场景中:

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

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

于 2017-04-02T07:29:56.690 回答