swift调整statusbar字体颜色

最近项目涉及到不同的界面navigationView颜色不一样,因此要根据不同界面来调整statusbar字体颜色以下两种方法目前最为有效并且直接

1.UIApplication.shared.statusBarStyle = .default

通过修改UIApplication.shared.statusBarStyle来改变颜色,.default为黑色 .lightContent为白色。但是目前这个方法在iOS 9之后被废弃掉了,指不定哪天就不能用了。而且强迫症对黄色⚠️不能忍。所以接下来的方法我觉得最为适合。

2.self.navigationController?.navigationBar.barStyle = .default

先在plist文件确认View controller-based status bar appearance属性是否存在,该属性不填默认为YES,如果存在请修改为YES。然后在对应需要修改调整颜色的控制器设置self.navigationController?.navigationBar.barStyle

self.navigationController?.navigationBar.barStyle = .default(barStyle为白,则statusBar的字体颜色为黑)

self.navigationController?.navigationBar.barStyle = .black (barStyle为黑,则statusBar的字体颜色为白)

结语:目前网上很多资料都是用的OC重写preferredStatusBarStyle方法来调整statusbar字体颜色,我在swift试了很多次,结果不理想。有通过swift实现的童鞋方便的话告诉我一下。

你可能感兴趣的:(swift调整statusbar字体颜色)