Добавить тон к таймеру обратного отсчета в XCODE 8 Swift 3

Я новичок в кодировании. Я пытаюсь изучить разработку iOS, и я создал простой таймер обратного отсчета, который использует ползунок для выбора количества времени в секундах. Я хотел бы добавить тон к последним 9 секундам обратного отсчета. Я знаю, как добавлять аудиофайлы, но у меня "НЕ ИДЕЯ", как добавить сигнал обратного отсчета к последним 9 секундам таймера.

@IBAction func startBtnTapped(_ sender: Any) {
    timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(ViewController.counter), userInfo: nil, repeats: true)

    SoundPlayer4.play()

    //Hide Start and Slider Buttons
    startBtn.isHidden = true
    sliderCtrl.isHidden = true
    stopBtn.isHidden = false

}

@IBAction func stopBtnTapped(_ sender: Any) {
    timer.invalidate()
    seconds = 180
    sliderCtrl.setValue(180, animated: true)
    timerLbl.text = "180"

    SoundPlayer3.play()

    //Show Start and Slider Buttons
    sliderCtrl.isHidden = false
    startBtn.isHidden = false
    stopBtn.isHidden = true
}

@IBAction func sliderCrtlUsed(_ sender: UISlider) {
    seconds = Int(sender.value)
    timerLbl.text = String(seconds)
}

func counter(){
    seconds -= 1
    timerLbl.text = String(seconds)

    if (seconds == 0){
        timer.invalidate()

        //Show Start and Slider Buttons
        startBtn.isHidden = false
        sliderCtrl.isHidden = false
        stopBtn.isHidden = true

        //Play Audio
        SoundPlayer1.play()
    }
}

Так может ли кто-нибудь помочь мне добавить тон обратного отсчета в мой проект? Спасибо


person blaq    schedule 14.02.2017    source источник


Ответы (1)


Поместите этот код в функцию counter:

if seconds < 10 {

    var AudioURL = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("Dog bark", ofType: "mp3")!)
    var AudioPlayer = AVAudioPlayer()

    do {       
        AudioPlayer = try AVAudioPlayer(contentsOfURL: AudioURL)
    } catch _ as NSError {
        fatalError()
    }

    AudioPlayer.play()
}

Затем поместите файл сюда:

введите здесь описание изображения

И это все!

Подробнее об этом вопросе можно прочитать здесь .

person Bright Future    schedule 14.02.2017
comment
спасибо! Мне пришлось внести несколько правок в код, но это сработало отлично. - person blaq; 16.02.2017