Ios 在推送详细视图时更改视图

Ios 在推送详细视图时更改视图,ios,uinavigationcontroller,Ios,Uinavigationcontroller,我有一个在屏幕底部有一个自定义栏的视图。当按下“集合视图”单元时,它将加载详细视图,我可以返回 这一切都很好;但是,我在自定义栏上显示了一个加号按钮,我希望加号按钮仅在显示详细视图时消失,然后在单击“上一步”按钮时返回 到目前为止,我使用了委托方法: - (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)v

我有一个在屏幕底部有一个自定义栏的视图。当按下“集合视图”单元时,它将加载详细视图,我可以返回

这一切都很好;但是,我在自定义栏上显示了一个加号按钮,我希望加号按钮仅在显示详细视图时消失,然后在单击“上一步”按钮时返回

到目前为止,我使用了委托方法:

    - (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
{
    // Your code to update the parent view

}

问题是,当加载并弹出详图视图时,也会触发此操作。你知道如何做到这一点吗?谢谢

我假设
mainView
detailView
viewControllers
。在
main视图的视图中将出现
method

 -(void)viewWillAppear:(BOOL)animated
{
   [super viewWillAppear:animated];
   //get reference of plus button here
   btnPlus.hidden = NO;
}
 -(void)viewWillAppear:(BOOL)animated
{
   [super viewWillAppear:animated];
   //get reference of plus button here
   btnPlus.hidden = YES;
}
detailView的视图中将出现
method

 -(void)viewWillAppear:(BOOL)animated
{
   [super viewWillAppear:animated];
   //get reference of plus button here
   btnPlus.hidden = NO;
}
 -(void)viewWillAppear:(BOOL)animated
{
   [super viewWillAppear:animated];
   //get reference of plus button here
   btnPlus.hidden = YES;
}

起初,这不起作用,直到我意识到我正在将自定义栏视图添加到导航控制器而不是视图控制器。修复此问题后,您的方法非常有效!我一定会喜欢那些你看了几个小时代码都看不到的简单解决方案!谢谢!