点击节点时我想要发出声音。 目前的代码是:在spritekit swift中点击节点时声音不会播放
let sndButtonClick = SKAction.playSoundFileNamed("button_click.wav", waitForCompletion: false)
,并从触摸开始
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
for touches: AnyObject in touches {
let location = touches.locationInNode(self)
if playButton.containsPoint(location) {
playButton.runAction(sndButtonClick)
playButton.removeFromParent()
let nextScene = GamePlayMode(size: self.scene!.size)
nextScene.scaleMode = self.scaleMode
self.view?.presentScene(nextScene)
}
}
我做同样的事情在gameplaymode两个节点的碰撞和它的作品,但在主菜单中这是行不通的!
我试图
self.runAction(sndButtonClick)
然后
playbutton.runAction(sndButtonClick)
既没有工作
我怀疑你的问题是在下一行; 'playButton.removeFromParent'。这将删除该节点并取消其操作。当一个实验改变剧本的'waitForCompletion'为'true'。 –
@PriceRingo waitForCompletion参数意味着动作的持续时间将与音频播放的长度相同,但仍然不会因为runAction方法的作用而执行动作。我在我的回答中描述了这一点。 – Whirlwind