将导航控制器添加到UIViewController
我刚刚完成了一个关于如何从基于Window的应用程序项目开始创建导航控制器的教程。
现在,我试图找出如何应用我在教程中使用的方法,其中根视图具有标签栏控制器。
我已经设置了一个标签栏控制器,再次使用基于窗口的应用程序项目,并添加了四个标签栏项链接到它们各自的UIViewController类/ nib。
我是否可以像使用基于窗口的教程一样将导航控制器添加到UIViewController类中?
以下是我自己创建导航控制器的方法:
#import @interface NavAppDelegate : NSObject { UIWindow *window; UINavigationController *navController; } @property (nonatomic, retain) IBOutlet UIWindow *window; @property (nonatomic, retain) IBOutlet UINavigationController *navController; @end #import "NavAppDelegate.h" @implementation NavAppDelegate @synthesize window; @synthesize navController; #pragma mark - #pragma mark Application lifecycle - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. [self.window addSubview:navController.view]; [window makeKeyAndVisible]; return YES; } etc...
UINavigationController
和UITabBarController
都是控制器的控制器 ,即它们管理多个UIViewControllers
。 UIViewControllers
反过来管理视图。 所以你的问题标题确实需要修改。
标准设置是这样的: UITabBarController
是根控制器。 每个选项卡控制UIViewController
或 UINavigationController
,后者又管理UIViewControllers
。
因此,您将UIViewControllers
或UINavigationControllers
添加到标签栏项目。
因此,你问题的直接答案是: 不 。 你不能将UINavigationController
添加到你的UIViewController
,而是UIViewController
。