码迷,mamicode.com
首页 > 移动开发 > 详细

iOS之 状态栏字体颜色的设置

时间:2016-11-18 06:36:01      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:并且   bar   系统   apple   ref   dstat   怎么办   with   添加   

前一段时间接手一个项目后,熟悉的过程中发现了不少问题,其中有一个就是关于状态栏的问题。

我们都知道:状态栏字体颜色在不同界面不一样的,原因是系统设置的时候把状态栏的字体颜色的界面控制器设置的yes。

那么问题来了,如果我自定义了导航栏,而状态栏的字体颜色是希望统一颜色,怎么办?

方法一:我们可以一个界面一个界面的去设置,因为apple已经给出了系统方法:

//默认的值是黑色的
-(UIStatusBarStyle)preferredStatusBarStyle
{
    return UIStatusBarStyleDefault;
    
}

// 是否隐藏状态栏
- (BOOL)prefersStatusBarHidden
{
    return NO;
}

 当然这样,会很繁琐,我们也不推荐使用,并且还会出现这种情况:设置后并没有显示效果。

方法二:application中设置状态栏的字体颜色,(推荐使用)

typedef NS_ENUM(NSInteger, UIStatusBarStyle) {
    UIStatusBarStyleDefault                                     = 0, // Dark content, for use on light backgrounds
    UIStatusBarStyleLightContent     NS_ENUM_AVAILABLE_IOS(7_0) = 1, // Light content, for use on dark backgrounds
    
    UIStatusBarStyleBlackTranslucent NS_ENUM_DEPRECATED_IOS(2_0, 7_0, "Use UIStatusBarStyleLightContent") = 1,
    UIStatusBarStyleBlackOpaque      NS_ENUM_DEPRECATED_IOS(2_0, 7_0, "Use UIStatusBarStyleLightContent") = 2,
} 

 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    //设置状态栏字体颜色
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent animated:YES];
}

 

如果只是这样在设置 application 中设置,并没有什么用,还需要一些配置才行,具体如下:

在plist文件中添加:View controller-based status bar appearance 并设置为 NO 即可。

 

 

iOS之 状态栏字体颜色的设置

标签:并且   bar   系统   apple   ref   dstat   怎么办   with   添加   

原文地址:http://www.cnblogs.com/LQCQ-Silent/p/6075913.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!