Iphone 如何在第一次查看时隐藏UINavigationBar
我想隐藏UINavigationBar,它只在第一次查看时自动加载导航项目,我想知道如何才能做到这一点 我试过这样做 //RootViewController.mIphone 如何在第一次查看时隐藏UINavigationBar,iphone,ios,uinavigationcontroller,uinavigationbar,Iphone,Ios,Uinavigationcontroller,Uinavigationbar,我想隐藏UINavigationBar,它只在第一次查看时自动加载导航项目,我想知道如何才能做到这一点 我试过这样做 //RootViewController.m #import "mydelegate.h" //-- this is where the view controller is initialized //... - (void)viewDidLoad { [super viewDidLoad]; navigationController *navControl
#import "mydelegate.h" //-- this is where the view controller is initialized
//...
- (void)viewDidLoad
{
[super viewDidLoad];
navigationController *navController = [[navigationController alloc] init];
[navigationController setNavigationBarHidden:YES animated:animated];
}
//.....
但是,我会出错,因为我想我没有正确地从委托文件调用navigationController,或者无法像调用另一个类的方法那样调用它
非常感谢您的帮助。您是否正在访问UINavigationController的正确实例? 您可以通过self.navigationController从添加到其堆栈中的任何UIViewController访问UINavigationController 否则,这可能会有所帮助:
这里有几件事不对
self.navigationController
访问显示视图控制器的导航控制器。您的代码片段正在创建新的UINavigationController;把酒吧藏起来不会给你带来什么viewDidLoad
中隐藏导航栏,不如将其隐藏在viewwillbeen:
中。您可以在viewDidLoad
中隐藏导航栏,当视图最初显示时,导航栏将被隐藏,但如果您按下显示导航栏的另一个视图并单击“后退”按钮,导航栏将保持可见李>
您的视图将出现:
应如下所示:
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:animated];
}
并且视图将出现:
在其他视图控制器中,您在该导航控制器上按下的方法应适当地显示或隐藏导航栏。
试试这个答案。它为我解决了问题
导航栏也有问题。我可以让它消失,但我不能让它在需要的时候重现。此链接解释了如何解决此问题,只需在视图中打开它就会出现,而在视图中关闭它就会消失。Ah Right!这起作用了:)谢谢,我需要阅读如何将内容添加到导航堆栈中。[self.navigationController设置NavigationBarHidden:是动画:否];没问题。推荐阅读苹果文档的概述和任务部分:干杯,我现在就来看看。。这是我第一次开始ios开发的时候,我从apple docs上读了很多东西,但当时我还不太懂。。所以也许现在是回去刷新的好时机。这行不通。在调用super的
viewwillbeen
方法之前,您需要交换行并将导航栏设置为隐藏。我不知道该告诉您什么。这就是我在我的应用程序中使用它的方式,它运行良好。您好,欢迎来到Stackoverflow。请阅读指导原则以获得正确答案:。其中一个规则是向链接添加上下文,而不仅仅是粘贴链接。您应该提供一个有效的答案,而不需要用户导航到另一端,但您可能希望这样做以获得答案的更多详细信息。当链接因某种原因失效时,这就成了一个更大的问题。