iOS如何隐藏系统状态栏

来源:互联网 发布:dm500s接收机 淘宝 编辑:程序博客网 时间:2024/05/21 07:11
这里主要说明一下iOS7系统给状态栏的适配及隐藏带来的改变。

变化一:
不隐藏状态栏的情况下,StatusBar会直接显示在当前页面上,当前页面的会延伸到StatusBar下方,顶到最上头。
这种显示方式在iOS7上是无法改变的,也无法通过设置或者配置类达到iOS6的状态栏效果。
 iOS7 改变 之 状态栏(StatusBar) - 点点滴滴 - IOS 点点滴滴
 

 iOS7 改变 之 状态栏(StatusBar) - 点点滴滴 - IOS 点点滴滴
 
 
所以在iOS7上进行页面布局的时候要考虑到这个情况,控件从当前view的顶端20像素开始,但是我们的程序往往需要适配之前的iOS6系统,固是否什么时候下移20像素需要根据当前的系统版本来判断。

变化二:状态栏的隐藏方法

如果是iOS6,状态栏的隐藏方法如下:
iOS7 改变 之 状态栏(StatusBar) - 点点滴滴 - IOS 点点滴滴
 

但是在iOS7下,仅仅通过这个方法是不行的,还必须同时设置下面这个参数,
iOS7 改变 之 状态栏(StatusBar) - 点点滴滴 - IOS 点点滴滴
方法一 iOS7后要在info.plist设置View controller-based status bar appearance = no;

- (UIStatusBarStyle)preferredStatusBarStyle

{

    returnUIStatusBarStyleDefault;

    //UIStatusBarStyleDefault = 0黑色文字,浅色背景时使用

    //UIStatusBarStyleLightContent = 1白色文字,深色背景时使用

}


- (BOOL)prefersStatusBarHidden

{

    return YES; // 返回NO表示要显示,返回YEShiden

}

方法二 iOS7后要在info.plist设置View controller-based status bar appearance = no;

    [[UIApplicationsharedApplication] setStatusBarHidden:YES];




0 0