【问题标题】:How do I remove navigation tab added by SWRevealViewController?如何删除 SWRevealViewController 添加的导航选项卡?
【发布时间】:2015-06-14 10:59:31
【问题描述】:

我在我的 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];

...没有效果。

【问题讨论】:

    标签: ios ios8 swrevealviewcontroller ios8.2


    【解决方案1】:

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

    [mainView.navigationController setNavigationBarHidden:YES];
    

    我希望这会有所帮助。

    【讨论】:

    • 谢谢Ahsan,但这已经在上面发布了。不过,如果您能提供一些关于为什么这会激活原本处于休眠状态的导航栏的见解,我将不胜感激。
    • 这是因为你在前面有这个mainView,所以navigationController中的navigationBar出现了,所以如果你必须隐藏navigationBar,你将不得不隐藏它来自最前面的controller,在你的情况下是mainView
    【解决方案2】:

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

    [mainView.navigationController setNavigationBarHidden:YES];
    

    这行得通。似乎在将 mainView 嵌入 SWRevealViewController 的过程中,主视图本身的导航栏变得可见,尽管默认情况下它是不可见的。

    【讨论】:

      猜你喜欢
      • 2019-09-17
      • 2020-01-03
      • 1970-01-01
      • 1970-01-01
      • 2019-12-11
      • 2021-03-29
      • 2017-08-01
      • 1970-01-01
      • 2019-08-14
      相关资源
      最近更新 更多