見出し画像

音声ファイルを再生する方法

ボタンを押したときに音声を流す方法です。

応用して使えそうなので備忘用に残します。

1: ボタンを一つ配置 & mp3音声ファイルをプロジェクトに入れておく

画像1


2: ボタンをプログラムに繋ぎ、以下のコードをコピペ

import UIKit
import AVFoundation

class ViewController: UIViewController {
   
   @IBOutlet weak var button: UIButton!
   private var audioPlayer: AVAudioPlayer!
   
   override func viewDidLoad() {
       super.viewDidLoad()
       button.layer.cornerRadius = 20.0
   }
   
   @IBAction func buttonAction(_ sender: Any) {
       playSound(name: "sample")
   }
   
}

extension ViewController: AVAudioPlayerDelegate {
   func playSound(name: String) {
       guard let path = Bundle.main.path(forResource: name , ofType: "mp3") else {
           print("音源ファイルが見つかりません")
           return
       }
       
       do {
           // AVAudioPlayerのインスタンス化
           audioPlayer = try AVAudioPlayer(contentsOf: URL(fileURLWithPath: path))
           
           // AVAudioPlayerのデリゲートをセット
           audioPlayer.delegate = self
           
           // 音声の再生
           audioPlayer.play()
       } catch {
       }
   }
   
}
@IBAction func buttonAction(_ sender: Any) {
playSound(name: "sample")
}


の"sample"の部分は自分が取り込んだmp3音声ファイルの名前にしてください

ex: "baseball.mp3"ならplaySound(name: "baseball")とする


ここまでできたらビルドをして、ボタンが押された時に音声が鳴るか確認する


以上です。

いいなと思ったら応援しよう!