状态栏外观无法正常工作-在iOS 13暗模式下

问题描述 投票:0回答:1

我的应用程序具有登录前屏幕的default状态栏样式。-登录后,应用程序将lightContent样式用于整个应用程序的状态栏。

[直到iOS 12一切正常。开始在iOS 13中出现问题。[[(仅在启用了暗模式时)>]。>这里是我已经尝试过的东西,但仍然无法正常工作。

    我确实将UIUserInterfaceStyle设置为Light
  • 我确实将UIViewControllerBasedStatusBarAppearance设置为YES
  • 然后我尝试了下面的单个视图控制器中的代码
  • override var preferredStatusBarStyle: UIStatusBarStyle { return .lightContent }
    • 也将此行添加到了类文件的viewDidLoad()中。
  • setNeedsStatusBarAppearanceUpdate()
  • 但是,我仍然没有摆脱与状态栏相关的问题。在登录之前,我只需要状态栏在屏幕上变黑即可,一旦用户登录,它就应该亮起。

注意:禁用暗模式时,一切工作正常。仅当启用暗模式时,此创建问题。

据我所知,我在Xcode中创建了一个新项目,并添加了3个具有不同状态栏外观的屏幕。

一个工作案例

VC1-Default样式VC2-Default样式VC3-LightContent样式

一个工作案例

VC1-LightContent样式VC2-LightContent样式VC3-Default样式

不起作用(失败)情况>VC1-Default样式VC2-LightContent样式VC3-Default样式

我想是的-如果您在应用程序中使用任何一种样式,无论设备的暗模式还是亮模式,它都可以正常工作。但是,如果将DefaultLightContent都结合使用以在应用程序中显示状态栏,则在启用暗模式时,它无法按预期工作。

任何人都可以通过状态栏样式来帮助我吗?

我的应用程序具有用于登录前屏幕的默认状态栏样式。 -登录后,应用程序将lightContent样式用于整个应用程序的状态栏。到iOS 12为止一切正常。它开始是...

[如果您不想在应用程序中支持深色模式(似乎您想要固定的灯光和默认配色方案),则可以通过设置设置在Info.plist中完全停用它将UIUserInterfaceStyle设置为亮或暗,或在每个单独的视图控制器上,都可以override var overrideUserInterfaceStyle: UIUserInterfaceStyle = .light
swift statusbar
1个回答
0
投票
[如果您不想在应用程序中支持深色模式(似乎您想要固定的灯光和默认配色方案),则可以通过设置设置在Info.plist中完全停用它将UIUserInterfaceStyle设置为亮或暗,或在每个单独的视图控制器上,都可以override var overrideUserInterfaceStyle: UIUserInterfaceStyle = .light
© www.soinside.com 2019 - 2024. All rights reserved.