Вы должны скрывать это каждый раз, когда view
вашего контроллера появляется (или исчезает) на экране. Это необходимо, так как бар поддерживает состояние между различными операциями push / pop. Например, если вы установили его скрытым в viewDidLoad
в первом контроллере, а во втором вы установите его видимым, то, когда вы открываете второй контроллер, панель сохраняет последнее установленное вами состояние.
Например, переопределить методы viewWillAppear
и viewWillDisappear
и скрыть / показать панель там.
- (void) viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:animated];
}
- (void) viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
[self.navigationController setNavigationBarHidden:NO animated:animated];
}