Итак, если вы находитесь в каком-либо контроллере представления, используйте этот метод:
[self.navigationController setNavigationBarHidden:YES animated:YES];
Дополнительные уточнения:
UINavigationController имеет свойство navigationBarHidden, которое позволяет скрывать / отображать панель навигации для всего контроллера nav.
Давайте разберемся со следующей иерархией:
--UINavigationController
------UIViewController1
------UIViewController2
------UIViewController3
Каждый из трех UIViewController будет иметь панель навигации, поскольку они находятся в UINavigationController. Например, вы хотите скрыть панель во второй (на самом деле не имеет значения, в какой именно), а затем записать в UIViewController2:
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:YES]; //it hides
}
- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[self.navigationController setNavigationBarHidden:NO animated:YES]; // it shows
}