前言:

IOS的界面,分为:状态栏、导航栏、主界面、底部状态栏。

本篇讲述状态栏的相关操作。

1:状态栏的高度:

框架是自动布局和自适应的,所以提供了一个宏定义来表示状态栏的高度:

 

 当页面布局,需要用到状态栏高度的时候,就用:STStatusHeightPx来使用。

当页面无导航栏显示的,主UIView是占满屏显示的,这时候的布局,计算相对位置时,可能会用到状态栏高度。

2、状态栏的样式文字颜色样式控制

方法定义:

 

//!设置视图Status栏显示的样式:默认全局
-(UIViewController*)setStatusBarStyle:(UIStatusBarStyle)style;
//!设置当前视图Status栏显示的样式:默认全局 @forThisView 是否只在当前View失效  默认:NO
-(UIViewController*)setStatusBarStyle:(UIStatusBarStyle)style forThisView:(BOOL)forThisView;

 

A、字体颜色类型【黑|白】:

-(void)onInit
{
    //状态栏
    [self setStatusBarStyle:UIStatusBarStyleLightContent];//Start中字颜色为黑,这里改白、全局生效

这个是全局的设置。

局部设置:

-(void)onInit
{
    //状态栏
    [self setStatusBarStyle:UIStatusBarStyleLightContent forThisView:YES];//Start中字颜色为黑,这里改白、全局生效

 

B、控制背景为颜色或图片:(sagit=self.view)

    [self.view.statusBar backgroundImage:@"circle_bg"];
    [[sagit statusBar] backgroundColor:ColorBlue];

可以在任意视图里获取状态栏的UI窗体,得到一个UIView,然后设置背景色或背景图即可。

这里的设置也是对全局生效。

3、隐藏或显示状态栏(self为当前控制器)

- (void)initUI
{
    [self needStatusBar:NO];
}

 参数YES、NO控制是否显示或隐藏。

默认全局定义是显示,因此只要设置隐藏的页即即可,显示的页面不需要设置。

其它:

各种状态栏和隐藏栏的bug或小问题、框架已经内部处理好了。

版权声明:本文原创发表于 博客园,作者为 路过秋天 本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。
个人微信公众号
创业QQ群:617713515
Donation(扫码支持作者):支付宝:
Donation(扫码支持作者):微信:
posted on 2020-08-14 15:00  路过秋天  阅读(202)  评论(0编辑  收藏  举报
路过秋天