Сделайте обновление UISlider с прогрессом, используя AVAudioPlayerIOS

Программируем под IOS
Ответить
Anonymous
 Сделайте обновление UISlider с прогрессом, используя AVAudioPlayer

Сообщение Anonymous »

Я создаю простое приложение для аудиоплеера, которое позволяет пользователю изменять положение трека с помощью UISlider.

Чего оно не позволяет do: ползунок не обновляется в зависимости от прогресса трека. Я нашел здесь аналогичный вопрос, и второй ответ был ответом на AVAudioPlayer — он предлагал использовать currentTime для обновления ползунка. Я хочу попробовать это сделать.

Вот мой код:

Код: Выделить всё

import UIKit
import AVFoundation

class MusicViewController: UIViewController {

....

@IBOutlet var Slider: UISlider!

@IBAction func changeAudioTime(_ sender: Any) {
Slider.maximumValue = Float(audioPlayer.duration)
audioPlayer.stop()
audioPlayer.currentTime = TimeInterval(Slider.value)
audioPlayer.prepareToPlay()
audioPlayer.play()
}

func updateSlider(){

Slider.value = Float(audioPlayer.currentTime)
print("Changing works")
}
Первая функция работает нормально — пользователь может изменить свое местоположение. Однако вторая функция для меня должна изменить Slider.value на основе currentTime AudioPlayer. Он этого не делает.

Он также не печатает, поэтому я считаю, что он не срабатывает.

Я новичок в Swift, поэтому, вероятно, что-то упускаю. Есть идеи?

Подробнее здесь: https://stackoverflow.com/questions/481 ... udioplayer
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»