我正在尝试隐藏我navigationViewControleler
层次结构的桅杆视图控制器中的工具栏。
我创建了一个新的ViewController作为RootViewController
并将其hidesBottomBarWhenPushed
设置为YES。
但似乎第一次启动应用程序时,此视图控制器不响应此操作,因为工具栏未隐藏。 (也许在init上,这个视图没有被推送到导航堆栈)。稍后,当来自细节控制器时,工具栏将被隐藏。
在app Delegate中我做:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
AEMMasterViewController *masterViewController = [[[AEMMasterViewController alloc] initWithNibName:@"AEMMasterViewController" bundle:nil] autorelease];
masterViewController.hidesBottomBarWhenPushed = YES;
//Inicializar lista de eventos
AEMEventosList *aux = [[AEMEventosList alloc] init];
aux.delegate = masterViewController;
//Asignar la lista de eventos a la variable miembro de la clase
self.eventosList = aux;
[aux release];
// Comenzar la descarga de eventos desde el servidor
[self.eventosList downloadEventos];
self.navigationController = [[[UINavigationController alloc] initWithRootViewController:masterViewController] autorelease];
//Configurar el toolbar
self.navigationController.toolbarHidden = NO;
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];
return YES;
}
第一次加载应用时,工具栏不会隐藏在主视图中。在进入详细视图并返回之后(因此控制器被推到nab堆栈上)工具栏被隐藏。
如何设置主视图的工具栏在启动时隐藏?
第一次加载视图时,此主视图控制器是否未在导航堆栈上按下,这就是它不响应hidesBottonBarWhenPushed
的原因?
答案 0 :(得分:1)
self.navigationController.toolbarHidden = NO;
您强制在此处显示工具栏。将hidden
设为NO
。在初次启动时,如果要隐藏工具栏,则应为YES
。或者尝试完全删除此行,并查看它是否符合hidesBottomBar设置 - 此时您将覆盖它。