swift - 如何在启动画面中支持暗模式?

标签 swift uikit ios13 ios-darkmode

我试图在启动画面中支持暗模式,这意味着我在 LaunschScreen.storyboard 文件中使用了命名颜色,但我遇到了这个错误:

Named colors do not work prior to iOS 11.0.

很明显,问题在于命名颜色仅适用于较新版本的 iOS,但没有简单的解决方法。我试图创建一个自定义 View 并在那里设置颜色,但我发现不允许在启动屏幕中使用自定义类。目前我想到的唯一解决方案是创建两个单独的目标,一个用于 iOS 11+,一个用于较低版本,但它有点矫枉过正,我不喜欢这个想法。显然,Apple 没有关于如何在启动屏幕中支持暗模式的建议(或者至少我找不到任何东西)。有什么建议吗?

最佳答案

使用 systemBackgroundColor 作为主视图的背景色。

您可以在 Storyboard GUI 中更改(无需代码)系统会自动在 iOS13 中设置正确的颜色,并为以前的 iOS 版本设置白色。

PS:对于其他颜色,您可以使用 System xxxx Color 作为标准。

关于swift - 如何在启动画面中支持暗模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57052169/

相关文章:

ios - 鼠标点击iOS13.4

ios - 将 nil 传递给具有泛型类型约束的可选参数的编译错误

swift - 在 Swift 闭包中解压嵌套元组

ios - 在看到 View 之前添加约束?

ios - 在 UIPickerView 中更改选定行的颜色,滚动时也是如此

SwiftUI 列表禁用单元格按下

ios - 无法使用 swift 4.1 创建自定义框架

ios - 无法在 Xcode 中构建,错误为 "[method] has been explicitly marked unavailable"

ios - 将文字写入透明的UIImage

ios - CATransition 类型rippleEffect 在 iOS13 上被禁用