Xcode 使用TabBar和NavBar配置应用程序中的窗口代理

Xcode 使用TabBar和NavBar配置应用程序中的窗口代理,xcode,swift,core-data,uitabbarcontroller,appdelegate,Xcode,Swift,Core Data,Uitabbarcontroller,Appdelegate,我不完全确定该如何表达,但出于某种原因,我认为它相当简单。以下代码用于导航栏和ViewController,用于在我的应用程序委托中设置托管上下文/核心数据(在didFinishLaunchingWithOptions下)。我如何使同样的事情工作,但同时使用TabBar(假设我仍然想要访问UIViewController) 下面是我尝试执行此操作的示例,但在使用“tabController.selectedIndex=2”命令时出错 有什么想法吗?提前感谢您的帮助 我想让navControlle

我不完全确定该如何表达,但出于某种原因,我认为它相当简单。以下代码用于导航栏和ViewController,用于在我的应用程序委托中设置托管上下文/核心数据(在didFinishLaunchingWithOptions下)。我如何使同样的事情工作,但同时使用TabBar(假设我仍然想要访问UIViewController)

下面是我尝试执行此操作的示例,但在使用“tabController.selectedIndex=2”命令时出错


有什么想法吗?提前感谢您的帮助

我想让navController=(tabController.selectedIndex=2)为!UINavigationController不正确

tabController.selectedIndex=2,而不应使用[tabController.viewControllers objectAtIndex:2]


很抱歉没有使用swift语法,但我认为您可以从中了解到这一点。

我认为让navController=(tabController.selectedIndex=2)作为!UINavigationController不正确

tabController.selectedIndex=2,而不应使用[tabController.viewControllers objectAtIndex:2]


很抱歉没有使用swift语法,但我认为您可以从中了解到这一点。

太好了!作为其他人的参考,它最终是tabController.viewControllers![1] 当最终转换为Swift时。非常感谢!完美的作为其他人的参考,它最终是tabController.viewControllers![1] 当最终转换为Swift时。非常感谢!
let navController = window!.rootViewController as! UINavigationController
let viewController = navController.topViewController as! ViewController
viewController.coreDataStack = coreDataStack
let tabController = window!.rootViewController as! UITabBarController
let navController = (tabController.selectedIndex = 2) as! UINavigationController
let viewController = navController.topViewController as! FamilyViewController
viewController.coreDataStack = coreDataStack