Iphone iOS UINavigationController

Iphone iOS UINavigationController,iphone,ios,xcode,Iphone,Ios,Xcode,我在使用导航控制器时遇到问题。 我的程序是在我有一个开始屏幕(不在导航控制器中)的地方布置的,然后当你按下一个按钮时,它会将你发送到navigationController和新视图 是否有办法使用后退按钮从导航控制器返回主屏幕 或 如果我将开始屏幕作为导航控制器的根目录,是否有办法在视图中隐藏顶部栏 我最初没有包括开始屏幕的原因是因为我不想在屏幕上显示导航栏 谢谢。要隐藏UINavigationBar,请在视图中使用以下行将出现:启动屏幕viewController的方法 [self.navig

我在使用导航控制器时遇到问题。 我的程序是在我有一个开始屏幕(不在导航控制器中)的地方布置的,然后当你按下一个按钮时,它会将你发送到navigationController和新视图

是否有办法使用后退按钮从导航控制器返回主屏幕

或 如果我将开始屏幕作为导航控制器的根目录,是否有办法在视图中隐藏顶部栏

我最初没有包括开始屏幕的原因是因为我不想在屏幕上显示导航栏


谢谢。

要隐藏
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]