gpt4 book ai didi

ios - 无法在 SwiftUI 中使用对象属性创建颜色

转载 作者:行者123 更新时间:2023-11-29 05:09:56 25 4
gpt4 key购买 nike

我有一个 SwiftUI iOS 应用程序,它从本地 JSON 文件中提取数据。

一切正常,除了在一个 View 中,我无法使用传递到 View 中的对象的属性来创建新的Color

struct CategoryItem: View {
var item: Item
var body: some View {
VStack(alignment: .leading) {
ZStack {
Rectangle()
.foregroundColor(Color(red: item.backgroundColor[0] / 255, green: 242 / 255, blue: 242 / 255))

出于某种原因,如果我使用 String(item.backgroundColor[0]) 打印出来,item.backgroundColor[0] 会正确返回,因此该值为那里,但计算抛出错误。我怀疑这与 Color 是计算属性有关,但我不确定为什么会发生错误。

任何帮助将不胜感激!

最佳答案

我明白了。

事实证明,item.backgroundColor[0] 需要指定为 Double(),即使静态整数(例如 255 >) 表示为整数。

解决方案是使用如下函数将所有内容包装在 Double() 中:

func colorsFromProperty(colors: [Double]) -> Color {
return Color(red: Double(colors[0] / 255), green: Double(colors[1] / 255), blue: Double(colors[2] / 255))
}

关于ios - 无法在 SwiftUI 中使用对象属性创建颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59779494/

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