我的导航栏没有隐藏,为什么?

Yam*_*mon 2 navigation iphone uinavigationbar uinavigationcontroller ios

非常愚蠢的问题,但我搞砸了.

我的问题是,我有两个控制器.第一个控制器现在UITableview没有导航栏,当我选择单元格时,它会转到相应的控制器,它有导航栏.现在我将返回第一个控制器导航栏不应该显示它应该被隐藏.我怎么能解决这个问题.对我来说很烦恼.

[self.navigationController.navigationBar setHidden:YES];
Run Code Online (Sandbox Code Playgroud)

到现在为止我已经使用过但它无法正常工作.

请给我解决方案.

提前致谢

编辑:第一个视图控制器---->在viewDidLoad和ViewWillAppear我使用[self.navigationController.navigationBar setHidden:YES];过的第二个视图控制器的viewDidLoad和ViewWillAppear[self.navigationController.navigationBar setHidden:NO];

**EDIT2:

第一个视图控制器 - >

- (void)viewDidLoad { 
  [super viewDidLoad];  
  [self.navigationController.navigationBar setHidden:YES];
Run Code Online (Sandbox Code Playgroud)

在视野中会出现......

 -(void)viewWillAppear:(BOOL)animated{ 

  [self.navigationController setNavigationBarHidden:YES]; 
Run Code Online (Sandbox Code Playgroud)

第二个控制器 - >

- (void)viewDidLoad { 

  [super viewDidLoad];
  [self.navigationController.navigationBar setHidden:NO]; 
Run Code Online (Sandbox Code Playgroud)

在视图中会出现--->

  -(void)viewWillAppear:(BOOL)animated{ 

     [self.navigationController setNavigationBarHidden:NO];
Run Code Online (Sandbox Code Playgroud)

编辑*答案*

我刚刚用过

[self.navigationController viewWillAppear:YES]; 
Run Code Online (Sandbox Code Playgroud)

在第一个和第二个控制器的viewDidLoad中.

Mau*_*lik 7

你必须[self.navigationController.navigationBar setHidden:YES];用第一个控制器的viewWillAppear 方法编写.

还试试: [self.navigationController setNavigationBarHidden:YES];

  • 确保调用viewWillAppear (2认同)