2016-09-24 54 views
0

我正在使用Spotify API处理情节提要应用。我用这个(https://github.com/avazquezpr/SpotifyDemo)Github项目作为'基地'。但事情是;这不是故事板应用程序。与Spotify连接后,您将直接进入Spotify播放器。iOS segue.destinationViewController不发送信息

我喜欢:

连接的Spotify(视图控制器) - >选择播放列表 (PlaylistController) - >去播放器(PlayController)

的应用越来越登录信息在ViewController并将它们发送给玩家。但在我的情况下,信息必须通过playlistMenuController发送。但我认为,segue.destinationviewcontroller有什么问题。

ViewController

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
     if segue.identifier == "goToPlaylistMenu" { 

      let destinationViewController: PlaylistController = segue.destinationViewController as! PlaylistController 

      // Send current Spotify Session 
      destinationViewController.currentSession = loginSession 
     } 
    } 

PlaylistController

lazy var currentSession = SPTSession() 
var loginSession = SPTSession() 

override func viewDidLoad() { 
    super.viewDidLoad() 
} 


// NAVIGATION 
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
    if segue.identifier == "goToPlayer" { 

     let destinationViewController: PlayerController = segue.destinationViewController as! PlayerController 

     destinationViewController.currentSession = loginSession 
     } 
    } 

}

+0

哪个视图控制器没有获得会话?为什么要声明currentSession和loginSession变量? –

+0

玩家(PlayController)没有获得会话。 我有currentSession和loginSession,BC,如果我删除其中的一个,我得到或这个错误在视图控制器: “类型的值‘PlaylistlistController’没有成员‘currentSession’ 或者我在PlaylistController得到: '使用未解析的标识符'loginSession' – Imaij

+0

在GitHub上的演示代码中,NowPlayingController只声明currentSession。我不认为你想要两个不同的会话对象。此外,这些示例使用currentSession对象调用登录方法,可能会重新建立会话。 –

回答

0

得到了解决,只是改变

destinationViewController.currentSession = loginSession 

destinationViewController.currentSession = currentSession 

并删除了PlaylistController中的var loginsession。