Swift 3音播放

Swift 3 sound play

好的,我已经研究过了,并尝试了很多不同的方法来在单击按钮时播放声音。

在 swift 3 中单击按钮时如何播放声音? 我的声音在名为 Sounds 的文件夹中,名称为 ClickSound.mp3

此功能下的用户

 //MARK:- PLAY SOUND
func playSound() {
    let url = Bundle.main.url(forResource: "ClickSound", withExtension: "mp3")!

    do {
        player = try AVAudioPlayer(contentsOf: url)
        guard let player = player else { return }

        player.prepareToPlay()
        player.play()
    } catch let error as NSError {
        print(error.description)
    }
}

首先导入AudioToolbox 导入 AVFoundation

希望有用:)

您必须防止播放器被丢弃,将其放入视图控制器的属性

The only real catch is that you must store your player as a property or other variable that won't get destroyed straight away – if you don't, the sound will stop immediately.

source:

var player : AVAudioPlayer?

func playSound(){
        let path = Bundle.main.path(forResource: "alert", ofType:"mp3")!
        let url = URL(fileURLWithPath: path)

        do {
            let sound = try AVAudioPlayer(contentsOf: url)
            self.player = sound
            sound.numberOfLoops = 1
            sound.prepareToPlay()
            sound.play()
        } catch {
            print("error loading file")
            // couldn't load file :(
        }
}

一个更简单的方法是将下面的代码行放在你的按钮按下函数中(注意:只适用于 sprite kit):

run(SKAction.playSoundFileNamed("ClickSound.mp3", waitForCompletion: false))

希望这对您有所帮助:)

您可能想要使用 SwiftySound。它可以让您在 Swift.

中轻松播放声音
Sound.play(file: "ClickSound.mp3")