このコードの中にカウントダウンが0秒になった場合にaudioplay.play()のアクションを起こしたいです。
if文の”もし、カウントが0になったら”の書き方ができません。
教えてください。
Swift
1//下記のコード内に書く予定のif文 2 if { 3 self.audioPlayer.play() 4 }
下記がコード全文です。
Swift
1// 2// ViewController 3// 4 5import UIKit 6import AVFoundation 7 8class TimerViewController: UIViewController { 9 10 11 @IBOutlet weak var lbTimer: UILabel! 12 let noodleTime: TimeInterval = 60 * 1 // 時間 60秒×50 13 14 var cnt:Int = 60*50 15 16 var timer:Timer! 17 18 19 20 @IBAction func stopButton(){ 21 audioPlayer.stop() 22 } 23 var audioPlayer : AVAudioPlayer! 24 25 26 27 override func viewDidLoad() { 28 29 super.viewDidLoad() 30 31// if { 32// self.audioPlayer.play() 33// } 34 35 // Do any additional setup after loading the view, typically from a nib. 36 37 //再生する音源のURLを生成 38 let soundFilePath = Bundle.main.path(forResource: "bell",ofType:"mp3")! 39 let fileURL = URL(fileURLWithPath: soundFilePath) 40 //AVAudioPlayerのインスタンス化 41 do{ 42 audioPlayer = try AVAudioPlayer(contentsOf: fileURL) 43 } 44 catch{ 45 print("音声ファイルの読み込みに失敗しました。") 46 } 47 48 49 timer = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector(self.update), userInfo: nil, repeats: true) 50 timer.fire() 51 } 52 53 override func didReceiveMemoryWarning() { 54 super.didReceiveMemoryWarning() 55 // Dispose of any resources that can be recreated. 56 } 57 58 func update(){ 59 cnt -= 1 60 61 lbTimer.text = String(cnt/60)+":"+String(cnt%60) 62 63 if cnt == 0 { 64 timer.invalidate() 65 } 66 } 67 68} 69
回答2件
あなたの回答
tips
プレビュー