gpt4 book ai didi

ios - 如何访问 iOS13 之前的 UIImage 深色外观

转载 作者:搜寻专家 更新时间:2023-11-01 06:49:27 25 4
gpt4 key购买 nike

我刚刚为我的应用添加了深色模式。

Assets 目录支持每个 Assets 的多种外观,在 iOS 13 上,这意味着当系统在暗模式或亮模式下运行时会使用正确的 Assets 。

xcode image asset catalog appearances这些不是我的真实 Assets

我正在尝试在旧版 iOS 上支持深色模式。在我这样做的尝试中,我添加了一个覆盖以强制暗模式,它适用于我的自定义颜色和主题,但不适用于图像。

是否可以在 iOS13 之前以编程方式访问图像的 dark 外观?

对于 iOS12,我尝试使用以下方法:

if #available(iOS 12.0, *) {
let traits = UITraitCollection(userInterfaceStyle: .dark)
let image = UIImage(
named: "Image",
in: bundle,
compatibleWith: traits
)
}

这只会返回正常外观,方法命名似乎暗示这只会检查我传递的特征集合是否与图像兼容。

最佳答案

据我所知,仅使用一项 Assets 是无法做到这一点的。在 iOS 13 以下系统将始终采用 Any 外观。您需要创建两个名称不同的图像集,然后选择其中一个。

这有点令人困惑,因为 UIUserInterfaceStyle 在 iOS 12+ 中可用,但这可能是因为 macOS 在那一年获得了深色模式。

关于ios - 如何访问 iOS13 之前的 UIImage 深色外观,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58341373/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com