在应用程序委托中设置初始视图控制器时如何设置 UITabBarController

How to set UITabBarController when setting initial view controller in app delegate

我需要以编程方式设置初始视图控制器(基于用户登录状态)。
这是我的初始代码:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let mainRootController = storyboard.instantiateViewControllerWithIdentifier("MainViewController") as UIViewController
if self.window != nil {

                let navigationController:UINavigationController = storyboard.instantiateInitialViewController() as UINavigationController
                navigationController.viewControllers = [mainRootController]

                self.window!.rootViewController = navigationController
}
return true

加载 'MainViewController' 没问题。但是我也缺少 UITabBarController,我不知道如何在这里以编程方式设置它。
有帮助吗?

试试这个:

    let tabBar = UITabBarController()
    tabBar.viewControllers = [navigationController]
    self.window!.rootViewController