在所有视图控制器中隐藏状态栏 - 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 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何使用objective-C在ios 9中隐藏特定视图控制器的状态栏