iOS开发·状态栏设置技巧(1):设置状态栏颜色的小结与误区

看到很多文章讲解设置状态栏的时候,直接丢设置状态栏的API方法,而没有考虑到info.plist中的项目对这些设置状态栏代码的影响。

如果没有考虑到这个,有的情况这些的代码根本是无用功,因为从来就不执行。

  • info.plist文件中有个一项:View controller-based status bar appearance:

当这里的值分别为:

  • YES,则以ViewController的设置为准,即通过preferredStatusBarStyle来设置状态栏。而ViewController对status bar的设置优先级高于application的设置。
  • NO,则以application的设置为准,即通过setStatusBarStyle:来设置状态栏。而ViewController的preferredStatusBarStyle方法无效,是根本不会被调用的。

注意点

  • 调用
    [[UIApplicationsharedApplication]setStatusBarStyle:UIStatusBarStyleLightContent];需要先在info.plist设置View controller-based status bar appearance项设为No
  • 不设置默认YES,即View controller对status bar的设置优先级高于application的设置。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容