iOS6 与iOS7以及7以上状态栏的颜色设置

iOS7默认状态栏文字颜色为黑色   


修改为白色的方法:(chenyong注意 我的Status bar style 使用的仍是默认值Gray style(default))

1在Info.plist中设置View controller-based status bar appearance 为NO
2 在需要改变状态栏颜色的ViewController中在ViewDidLoad方法中增加:
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

如下:

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackTranslucent];
}

如果需要在全部View中都变色,可以写在父类的相关方法中。

在使用Cordova的时候遇到的状态栏合并问题

- (void)viewWillAppear:(BOOL)animated
{
    // View defaults to full size.  If you want to customize the view's size, or its subviews (e.g. webView),
    // you can do so here.
    
    // 导航与状态栏合并的问题
    float currentVersion = [[[UIDevice currentDevice] systemVersion] floatValue];
    
    if (currentVersion >= 7) {
        // bounds 是以自身的左上角为坐标原点
        CGRect viewBounds = [self.webView bounds];
        viewBounds.origin.y = 20;
        viewBounds.size.height = viewBounds.size.height - 20;
        self.webView.frame = viewBounds;
        self.view.backgroundColor = [UIColor blackColor];
    }

    [super viewWillAppear:animated];
}

 

posted @ 2015-03-31 12:09  Follow-your-heart  阅读(309)  评论(0编辑  收藏  举报