Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 单击导航返回按钮时将调用什么方法-IOS?_Iphone_Objective C_Ios_Xcode - Fatal编程技术网

Iphone 单击导航返回按钮时将调用什么方法-IOS?

Iphone 单击导航返回按钮时将调用什么方法-IOS?,iphone,objective-c,ios,xcode,Iphone,Objective C,Ios,Xcode,这些问题看起来反复出现,但我没有找到解决问题的正确方法。在我的例子中,单击后退按钮后,我想隐藏导航栏。例如,View1推式view2,view2将具有导航栏,单击“上一步”后,它将返回到view 1,它不应包含导航栏,我需要将其隐藏。我在视图2中尝试了ViewWillEnglishe方法来隐藏,但是如果我有更多的视图,并且我在视图1中按每个视图,如果我单击“上一步”按钮,导航栏应该隐藏在视图1中。所以无论如何,在视图1本身中都要知道另一个视图被弹出。我尝试了view1中的viewwillappe

这些问题看起来反复出现,但我没有找到解决问题的正确方法。在我的例子中,单击后退按钮后,我想隐藏导航栏。例如,View1推式view2,view2将具有导航栏,单击“上一步”后,它将返回到view 1,它不应包含导航栏,我需要将其隐藏。我在视图2中尝试了ViewWillEnglishe方法来隐藏,但是如果我有更多的视图,并且我在视图1中按每个视图,如果我单击“上一步”按钮,导航栏应该隐藏在视图1中。所以无论如何,在视图1本身中都要知道另一个视图被弹出。我尝试了view1中的viewwillappear方法,但未调用该方法。我能在这里做什么

这个方法在我最初加载view1时被调用,而不是在弹出view2之后

    - (void) viewWillAppear : (BOOL)animated
{
    [root_obj.navigationController setNavigationBarHidden:YES animated:YES];
}
这就是我推动视图2的方式

[root_obj.navigationController pushViewController:view2 animated:NO];

提前感谢

为什么不将
导航栏
隐藏在
视图1的
视图显示方法中

编辑
我不确定你的代码有什么问题,但是你可以在
viewwillbeen
viewdidebeen
方法中做这些事情,以获取更多信息,并检查
viewwillbeen
viewdidebeen
我想,你忘记调用viewwillbeen:methodofsuper类了

-(void) viewWillAppear : (BOOL)animated
{

    [super viewWillAppear:animated];

    [root_obj.navigationController setNavigationBarHidden:YES animated:YES];
}

“我尝试了view1中的viewwillappear方法,但未调用该方法。”你确定吗?我不明白为什么不应该叫它。@inoob我试过。。我有两个类似的应用程序,其中我的第一个屏幕没有导航条,其余的屏幕都有。在这一点上,我一直在
视图中添加隐藏的导航条,它将显示
,并且似乎工作正常。如果可能的话,你能显示
viewwillbeen
code吗?或者我推错了的方式吗?@FerozMohideen,试着在
viewwillbeen
中做一个
NSLog
,据我所知
viewwillbeen
总是在视图出现时被调用。
-(void)viewwillbeen:(BOOL)动画{[root_obj.navigationController setNavigationBarHidden:YES动画:YES];NSLog(@“视图将显示!!”);[super VIEW将显示:动画];}
,请尝试此代码。