繁体   English   中英

iOS 7中隐藏导航栏时的状态栏

[英]Status bar when hidden navigation bar in iOS 7

我使用UINavigationController构建的应用程序是根视图,当我隐藏导航栏self.navigationController.navigationBarHidden = YES;时,我遇到了隐藏导航栏的问题self.navigationController.navigationBarHidden = YES; 状态栏半透明,不像状态栏iOS 6版本,例如app Apple Store

在此处输入图片说明

如何解决?

PS:我使用UIBarPositionTopAttached到UIStatusBar像iOS 6

1.在您的viewDidLoad添加此行以获取默认的iOS6样式。

[[UIApplication sharedApplication] setStatusBarStyle: UIStatusBarStyleBlackOpaque];

如果您需要在整个应用中使用默认syle,则请尝试此操作。

info.plist
      ----> Status Bar Style
                  --->UIStatusBarStyle to UIStatusBarStyleBlackOpaque

2.在iOS7iOS7以下方法来调整状态栏的高度。

- (void)viewDidAppear:(BOOL)animated
{
    [[UIApplication sharedApplication]setStatusBarStyle:UIStatusBarStyleLightContent];
    if ([[UIDevice currentDevice].systemVersion floatValue] >= 7) {
        CGRect windowFrame = [UIScreen mainScreen].bounds;
        windowFrame.origin.y+=20.0;
        windowFrame.size.height-= 20.0;
        self.view.frame = windowFrame;
        [self.view layoutIfNeeded];
    }
}

您可以通过plist直接将状态栏设置为黑色不透明,并将此键添加到.plist文件中

<key>UIStatusBarStyle</key>
    <string>UIStatusBarStyleBlackOpaque</string>

谢谢。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM