2016-12-13 1 views
0

HI j'ai UIViewController. Il a un tableau. Après 3 secondes, j'instancie le storyboard et trouve le premier UIViewController dans le storyboard et je place mes données pour le nouveau UIViewController. Mon code est le suivant:Démarrer le storyboard UIViewController à partir de UIController

let storyBoard = UIStoryboard(name: "TabBar", bundle: nil) 
     let tabBarController = storyBoard.instantiateViewController(withIdentifier: "tab_bar_story") as! UITabBarController 

     let uiControllers:[UIViewController] = tabBarController.viewControllers! 

     print("Size \(uiControllers.count)") 

     var controller = uiControllers[0] as! UserTabBarItemViewController 
     controller.users = self.users 

//  self.present(controller, animated: true, completion: nil) 

Lorsque la ligne self.present est décommentée, j'obtiens une erreur de suivi.

Size 2 
2016-12-13 23:53:16.684 swift_mvp[4229:87787] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Application tried to present modally an active controller <swift_mvp.ViewController: 0x7fb8eef02e20>.' 
*** First throw call stack: 

Mon nouveau tabBar dans le nouveau Storyboard a 2 onglets UIViewControllers. Y a-t-il quelque chose que je fais ici?

Répondre

0

a réussi à transmettre des données que je devais utiliser:

self.present(tabBarController, animated: true, completion: nil) 

au lieu du premier contrôleur de vue.