我正在使用最新的SDK和XCode 4.2开发iOS 4应用程序。
我正在使用UINavigationController,我不想显示导航栏。为此,我在AppDelegate上使用此代码:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
// Override point for customization after application launch.
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone)
{
self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPhone" bundle:nil] autorelease];
}
else
{
self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil] autorelease];
}
navController = [[UINavigationController alloc] initWithRootViewController:self.viewController];
navController.navigationBar.hidden = YES;
self.window.rootViewController = navController;
[self.window makeKeyAndVisible];
return YES;
}
但是,这一行navController.navigationBar.hidden = YES;
不起作用。我在第一个视图控制器上看不到导航栏,但我在其他视图中看到它。
有任何线索吗?
答案 0 :(得分:3)
我已经实现了以下目标:
navController.NavigationBar.hidden = YES
;在分配之后,在AppDelegate中。[navController setNavigationBarHidden:YES animated:YES];
上设置viewWillAppear:
。答案 1 :(得分:2)
答案 2 :(得分:0)
我认为必须将navigationBar设置为隐藏在视图上,而不是隐藏在控制器上。