2017-08-07 6 views
2

J'ai besoin de votre aide! Je développe et application Audio Player avec l'API Jukebox. J'utilise didSelectRowAt indexPath pour lire le flux actuel. Mon code fonctionne mais il n'arrête pas le flux avant d'en jouer un autre avec une cellule cliquée. Je vous serais reconnaissant pour toute l'aide apportée! Merci!didSelectRowAt indexPath play Audio

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { 

     jukebox = Jukebox(delegate: self as? JukeboxDelegate, items: [ 
      JukeboxItem(URL: NSURL(string:audio_url[indexPath.row])! as URL) 
      ]) 

     jukebox.play() 

} 

Répondre

1

Essayez et voir

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { 
      stopJukeBox() 
      jukebox = Jukebox(delegate: self as? JukeboxDelegate, items: [ 
       JukeboxItem(URL: NSURL(string:audio_url[indexPath.row])! as URL) 
       ]) 
      playJukeBox() 

} 

func stopJukeBox(){ 
    if jukebox != nil { 
    jukebox.stop() 
    } 
} 

func playJukeBox(){ 
    if jukebox != nil { 
    jukebox.play() 
    } 
} 

ou vous pouvez directement gérer le jeu et arrêter la fonction didSelect

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { 

    // Stop 
    if jukebox != nil { 
    jukebox.stop() 
    } 


      jukebox = Jukebox(delegate: self as? JukeboxDelegate, items: [ 
       JukeboxItem(URL: NSURL(string:audio_url[indexPath.row])! as URL) 
       ]) 

    // play 
    if jukebox != nil { 
    jukebox.play() 
    } 

} 
+0

ont parfaitement fonctionné! Merci beaucoup! – theappledev