从UIController启动故事板UIViewController

时间:2016-12-13 18:33:42

标签: xcode swift3 uitabbarcontroller uistoryboard

我有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,我的意思是标签。我在这里做些什么。

1 个答案:

答案 0 :(得分:0)

管理传递我必须使用的数据:

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

而不是第一个视图控制器。