gpt4 book ai didi

arrays - 如何将真实数据(不是测试数据)附加到 SwiftUI 中的列表?

转载 作者:行者123 更新时间:2023-11-30 10:39:01 25 4
gpt4 key购买 nike

我正在使用带有 ContentView 和 DetailView 的 SwiftUI 创建一个相当简单的列表应用程序。

但是,在我看过的所有教程中,传递给两个 View 的数据源都只是“testData”,并且数据源仅在#if DEBUG部分中定义。

如何在 ContentView 本身中定义应从哪个数组加载数据?

我创建了多个数据数组,但我不明白在 #if DEBUG 之外的何处实际访问了这些数据。

import SwiftUI

struct ContentView : View {
@ObjectBinding var store = GrapeStore()

var body: some View {
NavigationView {
List {
ForEach(store.grapes) { grape in
GrapeCell(grape: grape)
}
}
.navigationBarTitle("Wine grapes")
.navigationBarItems(trailing: EditButton())
.listStyle(.grouped)
}

}

}

#if DEBUG
struct ContentView_Previews : PreviewProvider {
static var previews: some View {
Group {
ContentView(store: GrapeStore(grapes: AGrapes))

ContentView(store: GrapeStore(grapes: testData))
.environment(\.colorScheme, .dark)

}
}
}
#endif

struct GrapeCell : View {
let grape: Grape

var body: some View {
return NavigationLink(destination: GrapeDetail(grape: grape)) {
Image(systemName: "photo")

VStack(alignment: .leading) {
Text(grape.name)
Text("\(grape.type) grape")
.font(.subheadline)
.foregroundColor(.secondary)
}
}
}
}

我设法从 ACGrapes 和 testData 数组中提取数据,但这仅在预览中。我如何决定实际应该提取哪些数据?

最佳答案

您还必须从项目的场景委托(delegate)文件传递数据。

关于arrays - 如何将真实数据(不是测试数据)附加到 SwiftUI 中的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57271814/

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