如何在 iOS 7 中隐藏状态栏?
Posted
技术标签:
【中文标题】如何在 iOS 7 中隐藏状态栏?【英文标题】:How to hide status bar in iOS 7? 【发布时间】:2013-11-18 12:44:00 【问题描述】:我尝试在我的应用程序.plist
文件中设置以下内容:
View controller-based status bar appearance: NO
虽然这会将它从我的初始视图控制器中删除,但一旦我转到另一个视图并带着我的导航控制器返回,它就会立即返回并且这一次它不会消失。另外,我不明白为什么这很重要,但我还将模拟指标下的状态栏设置为“无”,但这似乎没有帮助。我知道我将拥有导航栏,但我需要的状态栏不见了。
我怎样才能完成这项工作? 请提供详细答案,示例代码会很棒!
更新:这不是一个重复的解决方案,因为我已经尝试了所有其他解决方案,但似乎没有一个对我有用。最近我尝试过
[[UIApplication sharedApplication]setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
再次,没有结果。当应用程序最初启动时状态栏不存在,在用户访问另一个视图后,状态栏现在出现在 2 和其他视图中并且不会消失。即使您返回主视图。
【问题讨论】:
您在其他控制器中为您的导航栏设置了一些人员? @MirkoCatalano 是的,但没有关于status bar
Cannot hide status bar in ios7的可能重复
***.com/questions/18981256/hiding-statusbar-in-ios7/…
【参考方案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】:试试这两个步骤:
-
在项目的 .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
它对我有用。
【讨论】:
以上是关于如何在 iOS 7 中隐藏状态栏?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 iOS 7 和 iOS 6 中出现动画启动画面期间隐藏状态栏?