您的位置:首页 > 产品设计 > UI/UE

UIStatusBarStyle的类型改变

2015-09-12 18:16 330 查看
一、iOS9之前的方法

TARGETS->Custom iOS Target Properties中添加一项 View controller-based status bar appearance:No

然后调用

UIStatusBarStyle barStyle=_changed?UIStatusBarStyleLightContent:UIStatusBarStyleDefault;
[[UIApplication sharedApplication] setStatusBarStyle:barStyle animated:YES];


即可

一、iOS9之后(包括)的方法

下面以设置状态栏围UIStatusBarStyleLightContent为例

1、将 View controller-based status bar appearance 删除,或者设置为YES(默认为YES)。

2、如果viewController为rootViewcontroller,那么重写下面的方法

-(UIStatusBarStyle)preferredStatusBarStyle{
return UIStatusBarStyleLightContent;
}


如果rootviewcontroller为navgationController,那么可以在所管理的viewcontroller里写下面的代码

self.navigationController.navigationBar.barStyle = UIBarStyleBlack;


或者为navgationcontroller写一个分类

#import "UINavigationController+StatusBarStyle.h"

@implementation UINavigationController (StatusBarStyle)

- (UIStatusBarStyle)preferredStatusBarStyle
{
//also you may add any fancy condition-based code here
return UIStatusBarStyleLightContent;
}
@end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ios