【发布时间】:2014-08-04 06:53:19
【问题描述】:
在我的应用程序中,我必须显示一个带有导航栏的屏幕,然后推动另一个没有导航栏的控制器。 当我回来时,我想再次显示导航栏。但是,我的导航栏完全不可见。
我将导航栏设置为不透明,样式不透明。
你能帮帮我吗?
【问题讨论】:
-
一些示例代码将有助于加深对问题的理解
-
邮政编码你试过什么?
在我的应用程序中,我必须显示一个带有导航栏的屏幕,然后推动另一个没有导航栏的控制器。 当我回来时,我想再次显示导航栏。但是,我的导航栏完全不可见。
我将导航栏设置为不透明,样式不透明。
你能帮帮我吗?
【问题讨论】:
这将完美地隐藏和显示导航栏:
在第一个视图控制器中实现:
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:NO animated:YES];
}
在推送视图控制器中:
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:YES];
}
【讨论】:
显示一些代码...
或者在你告诉它返回之前尝试从你返回的视图控制器显示导航栏......应该避免这个问题。但怀疑你做错了什么。
【讨论】:
使用这个方法:
在view controller你想隐藏navigation bar的地方添加下面的代码viewWillAppear
[navigationController setNavigationBarHidden:YES];
所以,如果你在一些view controller:
在view controller你想显示navigation bar的地方添加下面的代码viewWillAppear
[self.navigationController setNavigationBarHidden:NO];
【讨论】: