iphone - 按下按钮时的 Swift AVAudioplayer

标签 iphone swift avaudioplayer

我正在尝试有一个按钮,按下时会发出声音。

我的应用程序有 6 个按钮(有 6 种不同的声音)。我只列出了一个,因为我试图在执行其余操作之前让一个按钮正常工作。我知道按钮正在工作(通过底部的打印命令),但它没有播放声音。

import UIKit
import AVFoundation

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    var player : AVAudioPlayer?

    @IBAction func buttonOne(_ sender: Any) {
        func playSound() {
            let url = Bundle.main.url(forResource: "drinking", 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)
            }
        }
        print("Anakin: IT IS WORKING!")
    }
}

最佳答案

打印有错误吗?

你能尝试这样做吗?

let path = Bundle.main.path(forResource: "FILE NAME WITH EXTENSION", ofType:nil)!
let url = URL(fileURLWithPath: path)

do {
    let sound = try AVAudioPlayer(contentsOf: url)
    sound.play()
} catch {
    // couldn't load file :(
}

关于iphone - 按下按钮时的 Swift AVAudioplayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45682372/

相关文章:

ios - ios 8从后台进入前台时如何播放MPMoviePlayerController?

ios - 从不同的 View Controller 访问 textField.text 变量

iphone - 清理嘈杂的倒谱结果

swift - 如何将变量从按钮操作函数拉到另一个 View Controller 类?

objective-c - 对不从 Objective-C 类继承的 Swift 类使用 @objc 属性

IOS - 点击 TabBarItem,检查变量以显示相应的 ViewController

objective-c - UILabel 自动换行

ios - 麦克风播放的音频断断续续,听起来像是空气吹入麦克风

ios - 使用 AVAudioPlayer 时 OSStatus 错误 2003334207

快速录音机