Iphone iOS UINavigationController
我在使用导航控制器时遇到问题。 我的程序是在我有一个开始屏幕(不在导航控制器中)的地方布置的,然后当你按下一个按钮时,它会将你发送到navigationController和新视图 是否有办法使用后退按钮从导航控制器返回主屏幕 或 如果我将开始屏幕作为导航控制器的根目录,是否有办法在视图中隐藏顶部栏 我最初没有包括开始屏幕的原因是因为我不想在屏幕上显示导航栏Iphone iOS UINavigationController,iphone,ios,xcode,Iphone,Ios,Xcode,我在使用导航控制器时遇到问题。 我的程序是在我有一个开始屏幕(不在导航控制器中)的地方布置的,然后当你按下一个按钮时,它会将你发送到navigationController和新视图 是否有办法使用后退按钮从导航控制器返回主屏幕 或 如果我将开始屏幕作为导航控制器的根目录,是否有办法在视图中隐藏顶部栏 我最初没有包括开始屏幕的原因是因为我不想在屏幕上显示导航栏 谢谢。要隐藏UINavigationBar,请在视图中使用以下行将出现:启动屏幕viewController的方法 [self.navig
谢谢。要隐藏
UINavigationBar
,请在视图中使用以下行将出现:
启动屏幕viewController的方法
[self.navigationController setNavigationBarHidden:YES];
或
[self.navigationController setNavigationBarHidden:YES animated:YES];
和您可以返回到上一个视图,也可以返回带有以下代码的主屏幕或父视图
-(IBAction)yourButton_Clicked:(id)sender{
[self.navigationController popViewControllerAnimated:YES];//// For back to Previous view
// [self.navigationController popToRootViewControllerAnimated:YES]; // For Back to home screen or parent view
}
有一种非常简单的方法,可以在ant视图中隐藏
UINavigationBar
:-
[self.navigationController setNavigationBarHidden:YES];
在您希望显示它的视图中,只需按如下方式将其取消隐藏:-
[self.navigationController setNavigationBarHidden:NO];
您可以在所有屏幕中使用导航栏。但对于不想显示的屏幕,只需使用导航栏的隐藏属性。该屏幕不会在顶部显示导航栏
[[self navigationController] setNavigationBarHidden:YES animated:YES];
这会解决你的问题
- (void) viewWillAppear:(BOOL)animated{
[self.navigationController setNavigationBarHidden:YES animated:animated];
[super viewWillAppear:animated];
}
- (void) viewWillDisappear:(BOOL)animated{
[self.navigationController setNavigationBarHidden:NO animated:animated];
[super viewWillDisappear:animated];
}
通过在主屏幕上实现此功能,您可以隐藏顶部栏U可以使用
self.navigationController.navigationBarHidden = YES;
将开始屏幕作为子视图添加到导航的根视图控制器
[self.view addSubview:startScreen.view]
稍后通过
[startScreen.view removFromSuperview]
将其删除,并将导航栏隐藏
标志设置为否
如果您使用的是情节提要,则可以创建一个UIButton并以模式将视图链接回
还可以查看视图控制器之间的导航。实际上,您的要求并不明确。 但要隐藏导航控制器,您可以使用
self.navigationController.navigationBarHidden=YES;
您还可以在导航栏上添加自定义按钮
UIBarButtonItem *leftBtn=[[UIBarButtonItem alloc]initWithTitle:@"Back" style:UIBarButtonSystemItemAction target:self action:@selector(backBtnClicked:)];
self.navigationItem.leftBarButtonItem=leftBtn;
您可以在backbtclicked:
方法中更正您的需求。
您还可以导航到根级别的视图控制器。是的,您可以隐藏导航栏,只需将此代码放在主屏幕或开始屏幕中要隐藏它的viewDidLoad方法中即可。。
[self.view addSubview:startScreen.view]