我需要知道SKAudioNode何时完成,但使用SKAction(:completion:)似乎不起作用:
audioNode.run(SKAction.play()) {
// do something after it has finished
}声音播放得很好,但是应该在完成时执行的东西实际上会立即运行。
有人能告诉我我做错了什么吗?如果可能的话,我该如何解决?
谢谢
发布于 2017-10-14 09:31:46
一个可能的解决办法是强迫延迟。虽然它很有效,但它远非完美:
let sequence = SKAction.sequence( [SKAction.play(), SKAction.wait(forDuration: soundDuration ) ])
audioNode.run(sequence, completion: {
audioNode.removeFromParent()
})https://stackoverflow.com/questions/46734996
复制相似问题