一枚絵のトップ画面からナビゲーションバー付きのTableViewに移動する、もしくはその逆などで、ページによってナビゲーションバーを表示したり非表示にしたい場合の方法。
使うのは、以下の二つ
・画面表示時のアクション『- (void)viewWillAppear:(BOOL)animated』
・ナビゲーションバーの表示を切り替える『[self.navigationController setNavigationBarHidden:YES/NO animated:YES/NO]』
『ナビゲーションバーを表示するページの.m』
//画面表示時のアクション - (void)viewWillAppear:(BOOL)animated { [self.navigationController setNavigationBarHidden:YES animated:NO]; [super viewWillAppear:animated]; }
『ナビゲーションバーを非表示にするページの.m』
//画面表示時のアクション - (void)viewWillAppear:(BOOL)animated { [self.navigationController setNavigationBarHidden:NO animated:NO]; [super viewWillAppear:animated]; }
応用として、画面の表示完了時に呼ばれる『- (void)viewDidAppear:(BOOL)animated』で、animatedをONにしてsetNavigationBarHiddenを使うことで、『ページの表示後にスライドしてナビゲーションバーが上に出てくる』という演出をすることも可能。