访问位于Tab栏内的viewcontroller

时间:2010-03-24 22:06:46

标签: objective-c xcode macos

我试图通过这样做来在我的AppDelegate中访问它 课程* rootController =(课程*)[navigationController tabcontroller];

但它不会工作似乎没有得到“课程”根控制器。

由于

1 个答案:

答案 0 :(得分:0)

从您的问题不清楚您如何安排您的意见以及您想要实现的目标。通常,UITabBarController包含一组根视图控制器。每个视图控制器对应标签栏上的选项卡。任何或所有这些视图控制器都可以是UINavigationController,它本身可以包含一堆视图控制器。

UITabBarController
                 |-UINavigationController -> [AViewController,.....]
                 |-UINavigationController -> [AnotherViewController,.....]
                 |-UINavigationController -> [AndAnotherViewController,.....]

导航控制器在本例中是每个选项卡的根视图控制器,可以通过UITabBarController viewControllers属性访问:

NSArray *rootViewControllers = [tabBarController viewControllers];

因此,如果您想要第一个标签栏的根视图控制器:

UINavigationController *rootViewController = [rootViewControllers objectAtIndex:0];