如何删除SWRevealViewController添加的导航选项卡?

时间:2015-04-09 07:28:37

标签: ios ios8 swrevealviewcontroller ios8.2

我正在iOS 8.2应用程序中使用SWRevealViewController。它工作得很好,但是当我的视图显示时,屏幕顶部的状态栏下方会出现一个磨砂导航栏。它覆盖了我的背景图像,我还没有找到一种简单的方法来删除它。

mainView = [[ViewController alloc] init];
sideMenu = [[MenuController alloc] init];

UINavigationController * frontViewController = [[UINavigationController alloc] initWithRootViewController:mainView];
UINavigationController * rearViewController = [[UINavigationController alloc] initWithRootViewController:sideMenu];

revealController = [[SWRevealViewController alloc] initWithRearViewController:rearViewController frontViewController:frontViewController];
revealController.delegate = mainView;

我搜索了SWRevealViewController代码,但没有找到任何明显与之相关的内容。我尝试评论可疑的代码部分并查看结果。我隐藏了状态栏。什么都没碰到它。

我尝试了一些事情......

[frontViewController.navigationController setNavigationBarHidden:YES];
frontViewController.navigationController.navigationBar.frame = CGRectZero;
[frontViewController.navigationController.navigationBar setHidden:YES];

[revealController.navigationController setNavigationBarHidden:YES];
revealController.navigationController.navigationBar.frame = CGRectZero;
[revealController.navigationController.navigationBar setHidden:YES];
[revealController.navigationController.navigationBar setBounds:CGRectZero];

......没有效果。

2 个答案:

答案 0 :(得分:0)

完成这个问题后,我尝试了一个最终测试。

[mainView.navigationController setNavigationBarHidden:YES];

这很有用。似乎在将主视图嵌入SWRevealViewController的过程中导致mainView中的导航栏变得可见,即使默认情况下它不是。

答案 1 :(得分:0)

由于您的前视图为mainView,您将使用

[mainView.navigationController setNavigationBarHidden:YES];

我希望这会有所帮助。