我有UIViewController。它有一些数组。 3秒后,我实例化故事板并在故事板中找到第一个UIViewController并为新的UIViewController设置我的数据。我的守则如下:
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)
当取消注释self.present行时,我会收到以下错误。
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:
我在新故事板中的新tabBar有2个UIViewControllers,我的意思是标签。我在这里做些什么。
答案 0 :(得分:0)
管理传递我必须使用的数据:
self.present(tabBarController, animated: true, completion: nil)
而不是第一个视图控制器。