Starting from iOS/iPadOS 13, a dark user interface style is available, similar to the dark mode introduced in macOS Mojave. How can I check whether the user has enabled the
var isDarkMode: Bool {
guard #available(iOS 12.0, *) else {
return false
}
let window = (UIApplication.shared.delegate as? AppDelegate)?.window
return window?.traitCollection.userInterfaceStyle == .dark
}
if you are not using window in AppDelegate, call window from SceneDelegate
It is similar to most answers above, but this works better when we are changing modes using
window?.overrideUserInterfaceStyle = .dark
can be called as
isDarkMode ? .black : .white