Why doesn't my iOS app disable dark mode?

前端 未结 3 740

So ... I\'ve tried to set my app to disable iOS 13 dark mode by forcing light mode according apple documentation, in the emulator all attempts work fine, but when I try on the r

3条回答
  •  我在风中等你
    2021-02-14 09:58

    Change the window UserInterfaceStyle for iOS 13+ version. Just set

    UIApplication.shared.changeStatusBarStyle(.light)
    

    or

    UIApplication.shared.changeStatusBarStyle(.dark)
    

    after changing window every time.

    extension UIApplication {
    
            enum StatusColor {
    
                case dark, light
            }
    
            func changeStatusBarStyle(_ mode: StatusColor = .light) {
    
                if #available(iOS 13.0, *) {
    
                    guard let appDelegate = delegate as? AppDelegate else { return }
    
                    var interfaceStyle: UIUserInterfaceStyle
    
                    switch mode {
                    case .dark:
                        interfaceStyle = .dark
                    default:
                        interfaceStyle = .light
                    }
    
                    appDelegate.window?.overrideUserInterfaceStyle = interfaceStyle
                }
            }
        }
    

    If any confusion please let me know.

提交回复
热议问题