Фоновая музыка Stop/Mute на iOS
Я создаю свое первое приложение. У меня есть приложение с музыкой, играющей в фоновом режиме со следующим кодом:
var backgroundMusicPlayer = AVAudioPlayer()
override func viewDidLoad() {
super.viewDidLoad()
//background Music
func playBackgroundMusic(filename: String) {
let url = NSBundle.mainBundle().URLForResource(filename, withExtension: nil)
guard let newURL = url else {
print("Could not find file: \(filename)")
return
}
do {
backgroundMusicPlayer = try AVAudioPlayer(contentsOfURL: newURL)
backgroundMusicPlayer.numberOfLoops = -1
backgroundMusicPlayer.prepareToPlay()
backgroundMusicPlayer.play()
} catch let error as NSError {
print(error.description)
}
}
playBackgroundMusic("Starship.wav")
}
Итак, что я должен сделать, чтобы остановить / отключить фоновую музыку при переключении на другой ViewController? Должен ли я сделать это мой FirstViewController или SecondViewController?
Очевидно, что я не хочу, чтобы звук был в SecondViewController, так как у меня есть другие вещи, которые будут там играть.
1 ответ
Чтобы отключить звук, я просто отключил звук.
backgroundMusicPlayer.volume = 0
и установите его в нормальное состояние, если я хочу звук
backgroundMusicPlayer.volume = 1
Если вы просто хотите приостановить музыку, вы можете позвонить
backgroundMusicPlayer.pause()
Для возобновления звоните
backgroundMusicPlayer.resume()
Если вы хотите остановить музыку и восстановить ее в начале, вы говорите это
backgroundMusicPlayer.stop()
backgroundMusicPlayer.currentTime = 0
backgroundMusicPlayer.prepareToPlay()
Вы также подумали о том, чтобы поместить свою музыку в одноэлементный класс, чтобы было проще воспроизводить музыку в разных контроллерах view?
Не уверен, что это то, что вы ищете, так как ваш вопрос немного расплывчатый.