1

我的导航栏有问题。

我的应用程序的第一个屏幕是欢迎屏幕,屏幕中央有两个经典按钮。没有栏(选项卡或导航,并且状态通过 setStatusBarHidden 中的隐藏viewDidLoad)。我只实现了其中一个按钮,但两者的工作方式相同(两个屏幕相似)。因此,第一个按钮加载了一个“注册”屏幕(a UITableViewController),其中包含一个要填写的表单。在那里,显示了状态栏,我添加了一个导航栏(在我的视图控制器的属性面板中),带有一个“发送”按钮在右上角。

在我的“导航项”的属性面板中(因为它被称为),我输入了正确显示的后退按钮的名称(虽然我想更改名称,但我稍后会这样做)。

我的问题是当我点击后退按钮时,它带我回到“欢迎”屏幕但状态栏没有隐藏,有一个没有标题和按钮的导航栏,我找不到方法隐藏它们。我尝试使用viewDidLoad, viewDidAppear, viewDidUnload(在注册视图中)但没有任何效果(我可以隐藏状态栏,但视图已加载,因此非隐藏导航栏和我的内容之间有一个黑色空间)。

顺便说一句,我使用情节提要完成了大部分设计,而不是使用代码,但我不介意同时使用两者。

有人可以帮忙吗?谢谢。

4

1 回答 1

4

将状态栏和导航栏隐藏在viewWillAppear:方法中而不是viewDidLoad:方法中。如果您不想显示status bar or navigation bar,请将该代码放在AppDelegateClass 中。

编辑:

这将在您的视图控制器中隐藏您的导航栏。将其放入viewWillAppear

self.navigationController.navigationBarHidden = YES;

这会隐藏您的状态栏。

[[UIApplication sharedApplication] setStatusBarHidden:YES animated: UIStatusBarAnimationNone];

您的视图控制器应该wantsFullScreenLayout设置为YES,以及隐藏状态栏。黑色空间显示您的视图在您没有时自动调整大小。您status bar or navigation bar需要在右侧的故事板“尺寸检查器”中检查自动调整大小侧窗格选项卡。

编辑1: 这将用动画隐藏你的酒吧:

[self.navigationController setNavigationBarHidden:YES animated:YES];
[[UIApplication sharedApplication]setStatusBarHidden:YES withAnimation:UIStatusBarAnimationSlide];
于 2012-07-17T10:58:53.493 回答