2015-10-01 2 views

ответ

1

Проблема заключается в том, что player является локальной переменной. Он существует для двух линий play() и исчезает в клубе дыма. Поэтому, прежде чем у него будет шанс сыграть что-нибудь, он исчез. Вы попросили его сыграть, а затем сразу же его убили! Не очень хорошо. Он хотел, чтобы сделать ваши ставки, но ты никогда не дал ему шанс ...

Просто продвигать его, чтобы быть переменной экземпляра независимо от класса это:

var player : AVPlayer! 
func play(){ 
    self.player = AVPlayer(URL: NSURL(string: "http://www.liveatc.net/play/ltba.pls")!) 
    self.player.play() 
} 
+0

Ваш код предполагает, вы не понимаете, о время жизни переменных в Свифте. Возможно, вы захотите прочитать мою книгу: http://www.apeth.com/swiftBook/ch03.html#_variable_scope_and_lifetime – matt

+0

thanks_________ @matt –

Смежные вопросы