2014-11-08 46 views
0

我有一个用于基于滑动界面的分页的水平PageViewController。 在其中一个视图中是一个导航控制器,该控制器会跳转到第二个详细视图。当子视图执行push segue时隐藏视图的导航栏

当第二个视图出现时,我想隐藏父视图的导航栏,但我不知道如何访问父视图上的任何方法。

我想这将是这个样子的详细视图

-(void)viewWillAppear { 
    [parentViewClassNameHere setNavigationBarHidden:YES]; 
} 

一个人怎么会去上父母设立的使用方法?

回答

0

导航栏实际上由UINavigationController拥有,其中父视图控制器和第二个视图控制器都被推入。因此,如果您从第二个视图控制器隐藏导航栏,则意味着您也正在隐藏父视图控制器中的栏。

您可以隐藏与

[[secondDetailViewController navigationController] setNavigationBarHidden:YES animated:YES]; 

导航栏如果您仍然想对父母的访问方法,请参阅本post为不同的方式有一个实例父视图控制器。然后你可以调用实例上的任何公共方法。

+0

该代码无法正常工作。我如何通过prepareForSegue来传递一个实例? – 2014-11-08 19:13:47

+0

我已经更新了答案,并把一个好帖子的链接,显示如何发送数据给父母。您也可以使用相同的方法来调用方法。 – Antenehs 2014-11-08 22:11:08