2012-03-05 6 views
0

私のnavigationViewControleler階層のマストビューコントローラでツールバーを非表示にしようとしています。rootViewControllerに割り当てられている場合、マスタービューコントローラはnavスタックにプッシュされませんか?

新しいViewControllerを作成してRootViewControllerにし、hidesBottomBarWhenPushedをYESに設定します。

しかし、ツールが非表示になっていないため、このビューコントローラが起動されたのは初めてです。 (たぶん、initでこのビューはnavスタックにプッシュされません)。その後、詳細コントローラから来ると、ツールバーは非表示になります。私はアプリの委任で

- (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に応答しないのはなぜですか?

答えて

1
self.navigationController.toolbarHidden = NO; 

あなたはここに表示されるようにツールバーを強制しています。 hiddenNOを設定します。最初の起動時に、ツールバーを非表示にする場合はYESにする必要があります。または、この行をすべて削除して、hidesBottomBar設定を適用するかどうかを確認してください。その時点で、あなたはそれを上書きします。

+0

これは簡単なはずですが、私は多くの設定を試しており、 'toolbarHidden'と' hidesBottomBarWhenPushed'がどのように連携して動作するのか理解できません。最後に、自分のviewControllerの 'viewWillApper'に' self.navigationController.toolbarHiden'プロパティを設定して、私が望む値にしました。 –

関連する問題