【问题标题】:How to hide status bar in iOS 7?如何在 iOS 7 中隐藏状态栏?
【发布时间】:2013-11-18 12:44:00
【问题描述】:

我尝试在我的应用程序.plist 文件中设置以下内容:

View controller-based status bar appearance: NO

虽然这会将它从我的初始视图控制器中删除,但一旦我转到另一个视图并带着我的导航控制器返回,它就会立即返回并且这一次它不会消失。另外,我不明白为什么这很重要,但我还将模拟指标下的状态栏设置为“无”,但这似乎没有帮助。我知道我将拥有导航栏,但我需要的状态栏不见了。

我怎样才能完成这项工作? 请提供详细答案,示例代码会很棒!

更新:这不是一个重复的解决方案,因为我已经尝试了所有其他解决方案,但似乎没有一个对我有用。最近我尝试过

[[UIApplication sharedApplication]setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];

再次,没有结果。当应用程序最初启动时状态栏不存在,在用户访问另一个视图后,状态栏现在出现在 2 和其他视图中并且不会消失。即使您返回主视图。

【问题讨论】:

标签: ios objective-c ios7 uinavigationbar statusbar


【解决方案1】:

我已经尝试了这里发布的所有建议,不幸的是这里发生的事情是一个小错误,在我的viewDidLoad 我有:

[[UIApplication sharedApplication] setStatusBarHidden:YES];

但在我的viewWillAppear 中,我有:

[[UIApplication sharedApplication] setStatusBarHidden:NO];

所以这只是一个覆盖问题,现在问题已解决。

【讨论】:

    【解决方案2】:

    隐藏状态栏:

    if [View controller-based status bar appearance: NO]: in AppDelegate.m call

    [[UIApplication sharedApplication]setStatusBarHidden:YES];
    

    else:在每个视图控制器中

    - (BOOL)prefersStatusBarHidden
    {
        return YES;
    }
    

    【讨论】:

    • 我试过了,但它对我不起作用,请查看更新后的帖子
    • 在第二个视图中显示更多代码。也许一些代码间接改变了状态栏隐藏属性。
    • [[UIApplication sharedApplication]setStatusBarHidden:YES];为我工作。以为我已经设置了基于视图控制器的状态栏外观:已经没有
    【解决方案3】:

    试试这两个步骤:

    1. 在项目的 .Plist 文件中设置属性:

    查看基于控制器的状态栏外观 = NO;

    和 2.在viewDidLoad方法中所有视图控制器的.m文件中放这行代码:

    [[UIApplication sharedApplication]setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
    

    【讨论】:

    • 我试过了,但它对我不起作用,请查看更新后的帖子
    【解决方案4】:

    在您希望隐藏状态栏的视图控制器中使用此方法:

    - (BOOL)prefersStatusBarHidden {
        return YES;
    }
    

    【讨论】:

    • 我试过了,但它对我不起作用,请查看更新后的帖子
    【解决方案5】:

    这应该有效:

    // 在 iOS7 中,它被调用并隐藏状态栏,因此视图不会位于顶部 iPhone 下方
    // 状态栏

    - (BOOL)prefersStatusBarHidden {
          return YES;
    }
    

    【讨论】:

      【解决方案6】:

      这些都不适合我。 当我尝试此方法时,我收到消息“使用未声明的标识符 preferstatusbarHidden

      include - (BOOL)prefersStatusBarHidden {
            return YES;
      }
      

      【讨论】:

        【解决方案7】:

        我不知道该怎么办了。我尝试了 setStatusBarHidden,prefersHiddenStatusBar,但仍然没有结果。最后,我浏览了下面的你管链接:

        https://www.youtube.com/watch?v=FtpBXdMSqRQ

        它对我有用。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2023-04-04
          • 1970-01-01
          • 1970-01-01
          • 2012-09-21
          • 1970-01-01
          • 2013-09-29
          相关资源
          最近更新 更多