在 /private/var/containers/Bundle/Application/ 的资产目录中找不到名为“...”的颜色

问题描述 投票:0回答:1

我认为这是一个错误,仅当我尝试访问资产目录中的自定义颜色时才会出现。颜色显示正确,但控制台出现错误。

在 /private/var/containers/Bundle/Application/... 的资产目录中找不到名为“...”的颜色

这只发生在带有图表的视图中(我在所有应用程序中使用相同的资源,但没有收到此消息。),以及具有新的 iOS18 Beta 的设备上。在其他版本的模拟器上我没有这个问题。

最奇怪的部分是我只收到有关 textColors 的错误,而不是 bgColors 的错误。 (见下一个例子)

enum ColorPicked: Codable, CaseIterable, Identifiable {
    var id: String { return self.bgColor.description }
    case white
    case red
    
    var textColor: Color {
        switch self {
        case .red: return .textBetterRed
        case .white: return .textBetterWhite
        }
    }

    var bgColor: Color {
        switch self {
        case .white: return .betterWhite
        case .red: return .betterRed
        }
    }    
}

import SwiftUI
import Charts

struct Chart1: View {

    let data: [ChartData1]
    let color: ColorPicked
var body: some View {
        ZStack{
            VStack(alignment: .leading){
                Text("Chart Title")
                    .foregroundStyle(color.textColor)
...
}.background(color.bgColor)
}
}
}
swiftui colors swiftui-charts
1个回答
0
投票

解决方法是使用 Color(uiColor:)。此问题也会影响 ImageRenderer。我使用它来生成 PDF,并且资产目录中的颜色不会显示在生成的 PDF 中

© www.soinside.com 2019 - 2024. All rights reserved.