在所有视图控制器中隐藏状态栏 - IOS [重复]

Posted

技术标签:

【中文标题】在所有视图控制器中隐藏状态栏 - IOS [重复]【英文标题】:Hide status bar in all view controllers - IOS [duplicate] 【发布时间】:2017-06-23 19:49:52 【问题描述】:

如果我想隐藏单个视图控制器子类的状态栏,那么我这样做:

override var prefersStatusBarHidden: Bool 
    return true

但是如果我想在所有视图控制器子类中默认隐藏状态栏怎么办?在项目设置中选中“隐藏状态栏”没有任何作用。

我正在尝试编程UIPageViewController,其中包含许多附加到它的视图控制器。不必将它们全部子类化就好了。

【问题讨论】:

【参考方案1】:

转到您的 Info.plist 文件并添加一个新属性:

View Controller based status bar appearance 并将其设置为NO

然后转到 App Delegate 并将您的方法替换为:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool 
        // Override point for customization after application launch.

        UIApplication.shared.isStatusBarHidden = true
        return true
    

【讨论】:

是的,这很棒。不过,我现在无法标记您的答案。我想大约需要 7 分钟。 是的,当然...我不着急:-。我很高兴能帮上忙! 感谢兄弟的回答,点赞:) ios 9.0 以来这不是已弃用吗? 老实说,我不知道。对不起。无论如何,当 ios 10 是可用的最新版本时,这个答案被发布了,我记得它当时有效。【参考方案2】:

右键单击您的Info.plist 并选择Open As > Source code

在文件的末尾,在

之前
</dict>
</plist>

添加这个

<key>UIStatusBarHidden</key>
<true/>

或添加Status bar is initially hidden并将其设置为YES

【讨论】:

以上是关于在所有视图控制器中隐藏状态栏 - IOS [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Swift如何在IOS中隐藏运营商,时间和电池[重复]

如何使用objective-C在ios 9中隐藏特定视图控制器的状态栏

检查使用模态视图控制器隐藏的 iOS 状态栏

在 iOS 9 的一个视图控制器上隐藏状态栏

当“查看基于控制器的状态栏外观”=YES 时隐藏 ios 状态栏

ios隐藏状态栏后向下移动ui视图