在有导航栏的情况下,改变状态栏颜色

1、先获取状态栏的高度

// 状态栏(statusbar)

CGRect rectStatus = [[UIApplication sharedApplication] statusBarFrame];

NSLog(@"status width - %f", rectStatus.size.width); // 宽度

NSLog(@"status height - %f", rectStatus.size.height);  // 高度


// 导航栏(navigationbar)+ 状态栏 高度的宏定义

#define Nav_Height ([[UIApplication sharedApplication] statusBarFrame].size.height + self.navigationController.navigationBar.frame.size.height)

tabBar的高度

#define TabBar_Height self.tabBarController.tabBar.frame.size.height

自定义状态栏

UIView*statusBarView = [[UIView alloc] initWithFrame:CGRectMake(0, -20,SCREEN_WIDTH, rectNav.size.height)];

statusBarView.backgroundColor= [UIColor redColor];

[self.navigationController.navigationBar addSubview:statusBarView];

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