横屏后状态栏不显示

横屏时,发现状态栏不显示了,这是因为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;  
    }  
      
    //设置是否隐藏  
    - (BOOL)prefersStatusBarHidden {  
    //    [super prefersStatusBarHidden];  
        return NO;  
    }  
      
    //设置隐藏动画  
    - (UIStatusBarAnimation)preferredStatusBarUpdateAnimation {  
        return UIStatusBarAnimationNone;  
    }    

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在做一个页面横屏的操作后,发现状态栏不显示了上网查了查原因:iOS系统(好像是iOS8之后)在视图横屏的时候默认把...
    SunshineAutumn阅读 4,091评论 0 2
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,292评论 4 61
  • 嗯。。。。。不知道从何说起,就在最近吧,我家的电脑坏了,我的职业梦就此破碎了,因为我今年16岁没有能力去买一台新的...
    2a204a0f1734阅读 179评论 0 1
  • 快乐不是因为拥有的多,而是因为计较的少~早安!
    肖财明阅读 194评论 0 0