无法在ios 7设备上的视图控制器上隐藏状态栏。
已经尝试通过plist 文件和Appcontroller.mm进行设置,但我仍然没有隐藏状态栏
[[UIApplication sharedApplication] setStatusBarHidden:YES];//Doesn't help
转到 info.plist 并添加两个属性(如果不存在)。将“状态栏最初隐藏”设置为YES
并设置UIViewControllerBasedStatusBarAppearance
为NO
. 这将隐藏您应用的状态栏。
那是因为 iOS 7 改变了它处理状态栏的方式。
在您的应用程序 Info.plist 上设置UIViewControllerBasedStatusBarAppearance
为应该可以工作。NO
我最近有同样的问题。确保您的目标是正确的视图控制器。尝试在根视图控制器中隐藏状态栏。另外,我正在 UIViewControllers 中实现方法(BOOL)prefersStatusBarHidden
(doc)来隐藏状态栏。通过使用这种方法,您可以将首选配置转发给“子视图控制器”。此外,此方法在呈现为模态的 UIViewController 中也能正常工作。
// for ios 7
- (BOOL)prefersStatusBarHidden
{
return YES;
}
// for ios 6
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[[UIApplication sharedApplication] setStatusBarHidden:YES];
}
对于 iPad (iOS 7.0) 需要在 Info.plist 文件中添加另一个值。
UIStatusBarHidden 布尔值是。