【问题标题】:iOS dark mode - image assets not redrawniOS 暗模式 - 未重绘图像资源
【发布时间】:2019-12-19 23:01:21
【问题描述】:

我正在为 iOS 实现暗模式。图片出现问题:

  • 我已打开 Assets.xcassets 并将“外观”更改为“任何、黑暗”
  • 我当然已经添加了新图片。

不幸的是,在 xcode 中覆盖环境界面样式时,图像没有被重绘。

我尝试在我的 viewController 中捕获 traitCollectionDidChange 方法,并且它被正确调用。我可以设置新图像(origImage_dark),但它不应该是自动的吗?这就是资产设置的目的。我正在使用图像的 .alwaysOriginal 渲染。

【问题讨论】:

    标签: ios xcode ios-darkmode


    【解决方案1】:

    通过动态解析图像来运行应用程序有帮助:

    let image = UIImage(named: "someImage")
    let asset = image?.imageAsset
    let resolvedImage = asset?.image(with: traitCollection)
    

    在此之后,恢复到设置图像的原始方式似乎有效。 Xcode,非常感谢!

    【讨论】:

    • 您如何显示图像?如果你把它放在UIImageView 中,它应该会自动显示正确解析的图像。如果您是自己绘制的,那么是的,您需要手动解决它。
    • 它主要在 UIImageView 和控件中(如 UIButton.image)。我现在在任何地方都动态解析图像(并且可以正常工作),但我的 TabBar 和 navigationBar 仍然没有 100% 更新。
    猜你喜欢
    • 2020-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-03
    • 2020-09-17
    • 2020-02-01
    • 1970-01-01
    相关资源
    最近更新 更多