iOS导航栏闪屏以及statusBar背景色的更改

1.如果导航栏有卡顿或者闪屏效果出现,多半是因为导航栏背景为透明色所致,可以给导航栏设置主题色,比如已白色为例

    self.navigationController.navigationBar.backgroundColor = [UIColor whiteColor];

2.但是即使上述设置后,依然发现statusBar的颜色没有改变,查看图层发现 statusBar的frame并不在上述设置的范围内,除去网上各种系统方法的以及plist配置文件的搭配设置,本人提供以下边便捷设置方法

创建一个UIView, 
设置该UIView的frame.size 和statusBar大小一样, 
设置该UIView的frame.origin 为{0,-20}, 
设置该UIView的背景色为你希望的statusBar的颜色, 
在navigationBar上addSubView该UIView即可。

你可能感兴趣的:(技术,开发,移动端,ios)