Im пытается получить песню для воспроизведения, когда песня заканчивается, но она не работает. это то, как я его реализации:Swift: Replay AVAudioPlayer, когда заканчивается песня
var music1 : AVAudioPlayer! = AVAudioPlayer()
func setUpMusic(){
let music1Path = NSBundle.mainBundle().pathForResource("Lost", ofType:"mp3")
let fileURL1 = NSURL(fileURLWithPath: music1Path!)
do{
music1 = try AVAudioPlayer(contentsOfURL: fileURL1, fileTypeHint: nil)
}
catch{}
music1.play()
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(GameScene.replayFirstSong(_:)), name: AVPlayerItemDidPlayToEndTimeNotification, object: music1)
}
func replayFirstSong(note: NSNotification){
print("Inside Replay first song")
music1.currentTime = 0
music1.play()
}
Любая идея, как я могу получить эту песню постоянно играть в цикле
GOT IT! Допустим, я хочу, чтобы он был бесконечным, но если я хочу, чтобы он остановился, когда пользователь что-то сделал, как я могу заставить его остановиться. Прямо сейчас я делаю music1.stop(), но это не работает, оно просто повторяет – OriginalAlchemist
@OriginalAlchemist: используйте music1.pause() и для повтора player.repeatMode = MPMovieRepeatMode.init (rawValue: 5)! –
Вам понадобится IBAction (например, кнопка) или другая функция для вызова stop() - [прочитайте, что он говорит об использовании] (https://developer.apple.com/library/ios/documentation/AVFoundation/Reference/ AVAudioPlayerClassReference/# // apple_ref/occ/instm/AVAudioPlayer/stop) с текущим временем (которое вы можете просто избавиться) –