在 VIPER 项目中启用 lightContent 状态栏样式

Posted

技术标签:

【中文标题】在 VIPER 项目中启用 lightContent 状态栏样式【英文标题】:Enabling lightContent status bar style in a VIPER project 【发布时间】:2017-02-02 07:23:44 【问题描述】:

在以前版本的 Swift 中,要更改状态栏样式,我会使用 'preferredStatusBarStyle' 并返回 .lightContent。

此方法现在不可用,我已经尝试了所有关于 SO 的解决方案,例如:

    self.navigationController?.navigationBar.barStyle = UIBarStyle.black
    self.navigationController?.isNavigationBarHidden = true

但是,这些技术不起作用。有人可以对此有所了解。目前在我的 plist 中,我将 'statusBarStyle' 设置为 'UIStatusBarStyleLightContent'。

欢迎您在这里下载我的项目:https://github.com/benskill/Flash-Flags

【问题讨论】:

【参考方案1】:

ios 10 中,preferredStatusBarStyle 是一个属性,而不是一个方法。因此,不要用 func 声明覆盖它,而是 override gettervar 声明覆盖它。

override var preferredStatusBarStyle: UIStatusBarStyle 
   return .lightContent

【讨论】:

以上是关于在 VIPER 项目中启用 lightContent 状态栏样式的主要内容,如果未能解决你的问题,请参考以下文章

使用viper 进行golang 应用的配置管理

iOS中的VIPER和MVC,MVVM 架构之间的比较

在VIPER架构中何处以及如何执行segue?

viper 源码分析

Swift 配置视图中的 VIPER 设计模式

单元测试 VIPER 协议