【问题标题】:Hide ios status bar when "View controller-based status bar appearance"=YES当“查看基于控制器的状态栏外观”=YES 时隐藏 ios 状态栏
【发布时间】:2016-11-02 23:17:22
【问题描述】:

我需要根据视图控制器更改状态栏样式,因此在我的 plist 文件中“基于视图控制器的状态栏外观”设置为 YES。

而且我有时需要隐藏状态栏!

我正在尝试使用 setStatusBarHidden,但它似乎只有在“查看基于控制器的状态栏外观”设置为 NO 时才有效> ...

那么有没有办法隐藏状态栏呢?

【问题讨论】:

  • 覆盖视图控制器中的prefersStatusBarHidden 方法
  • 设置 prefersStatusBarHidden 仅在基于视图控制器的状态栏外观设置为 YES 时才有效

标签: ios statusbar


【解决方案1】:

首先,声明一个变量来表示是否隐藏:

@interface ExampleViewController
{
    BOOL statusBarHidden;
}

第二,重写依赖变量的UIViewController方法:

- (BOOL)prefersStatusBarHidden {
    return statusBarHidden;
}

最后,当您需要隐藏状态栏时,请执行以下操作:

statusBarHidden = YES;
[self setNeedsStatusBarAppearanceUpdate];

当您需要再次显示状态栏时,请执行以下操作:

statusBarHidden = NO;
[self setNeedsStatusBarAppearanceUpdate];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-09
    • 1970-01-01
    • 1970-01-01
    • 2017-03-20
    • 2017-06-04
    • 2014-02-21
    • 2013-01-11
    • 1970-01-01
    相关资源
    最近更新 更多