美文网首页
横屏后状态栏不显示

横屏后状态栏不显示

作者: 阳光下的叶子呵 | 来源:发表于2021-10-28 18:31 被阅读0次

横屏时,发现状态栏不显示了,这是因为iOS系统(好像是iOS8之后)在视图横屏的时候默认把状态栏隐藏掉了

1.在info.plist文件中,添加View controller-based status bar appearance,  属性为bool,设为NO;

2.在需要显示的ViewController中设置
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationNone]; 

3.在需要隐藏的ViewController中设置
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
  • 上面的隐藏/显示状态栏的方法,在iOS9之后被弃用了,采用如下的方法进行设置:
    //设置样式  
    - (UIStatusBarStyle)preferredStatusBarStyle {  
        return UIStatusBarStyleLightContent;  // 白色
        // return UIStatusBarStyleDefault; // 默认黑色
    }  
      
    //设置是否隐藏  
    - (BOOL)prefersStatusBarHidden {  
    //    [super prefersStatusBarHidden];  
        return NO;  
    }  
      
    //设置隐藏动画  
    - (UIStatusBarAnimation)preferredStatusBarUpdateAnimation {  
        return UIStatusBarAnimationNone;  
    }    

以上三个方法,只需要在需要设置的viewController重写即可!
但是需要注意的是,使用这个"新"的方法进行设置的时候,需要将View controller-based status bar appearance设置为YES,才会有效果,

相关文章

网友评论

      本文标题:横屏后状态栏不显示

      本文链接:https://www.haomeiwen.com/subject/rnwvaltx.html