Steps:
- 项目清单
- 创建一个名为 Nav 的项目。
- 创建一个新的
UIViewController
BaseViewController(使用 XIB)和 FirstViewController(使用 XIB)。
-
In the NavAppDelegat.h
定义baseController变量
@interface NavAppDelegate : NSObject <UIApplicationDelegate> {
BaseViewController *baseController;
}
@property (nonatomic, retain) IBOutlet BaseViewController *baseController;
-
In the NavAppDelegat.m
将 baseController 添加到窗口:
@synthesize baseController;
(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[self.window addSubview:baseController.view];
[self.window makeKeyAndVisible];
return YES;
}
打开BaseViewController.xib文件并添加UINavigationController
,将其 Root View Controller 类和 XIB 设置为 FirstViewController(在检查器中)。
- 还将 navigationController 变量与
UINavigationController
.
我相信这应该向我显示带有导航栏的 FirstViewController 。如果我直接在 MainWindow.xib 上执行此操作,事情就会按我的预期工作,但在这里我看不到导航栏。我缺少什么?谢谢!
更新:
所以问题只是万一我使用UINavigationController
在一些附加控制器(此处为 BaseViewController.xib)而不是 MainWindow.xib 中,我看不到导航栏。
我无法判断您是否正在尝试将导航控制器直接连接到您的窗口,只是从第二个 XIB (应该可以工作),或者您是否正在使导航控制器成为另一个视图的子视图,这将无法工作。
UINavigationController
仅旨在用作UIWindow
或者作为一个子视图UITabController
。 Apple 不希望您在其他环境中嵌入导航控制器。
See 组合视图控制器接口有关更多详细信息,请参阅视图控制器编程指南。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)