我有一个在斯威夫特玩鸟游戏的密码。鸟收集蛋。我想在鸟碰鸡蛋时发出硬币的声音。我尝试了下面的代码,但它不是在接触时播放。我怎样才能做到?

do {
            // Preperation
            try     AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
        } catch _ {
        }
        do {
            try AVAudioSession.sharedInstance().setActive(true)
        } catch _ {
        }

        // Play the sound
        do {
            audioPlayer = try AVAudioPlayer(contentsOfURL:     alertSound)
        } catch _{
        }

       audioPlayer.prepareToPlay()
        audioPlayer.play()

最佳答案

创建声音文件的路径

let path = NSBundle.mainBundle().pathForResource("(sound name)", ofType: (type) )!

路径的URL
var url = NSURL()

保持声音的变量
var soundEffect: AVAudioPlayer!

当你想播放声音的时候
url = NSURL(fileURLWithPath: path)
do {
    let sound = try AVAudioPlayer(contentsOfURL: url)
    soundEffect = sound
    sound.play()
} catch {

}

09-30 14:54
查看更多