【发布时间】:2021-02-08 16:42:13
【问题描述】:
希望每个人都做得很好 我想就swiftui中的标题寻求一些帮助 我制作了一个应用程序并添加了类别,因此我需要标题来分隔我的数据 但是,它没有做我想做的事! (典型的... :joy:)
善良的灵魂会帮助迷失的灵魂找到启蒙之路吗?
import SwiftUI
struct ContentView: View {
// MARK: - PROPERTIES
@State private var isShowingSettings: Bool = false
var fruit: [Fruit] = fruitData
var driedFruit: [DriedFruit] = driedFruitData
// MARK: - BODY
var body: some View {
NavigationView {
List {
Section(header: fruitHeader) {
ForEach(fruit, id: \.self) { item in
NavigationLink(destination: FruitDetailView(fruit: item)) {
FruitRowView(fruit: item)
.padding(.vertical, 4)
}
}
}
Section(header: driedFruitHeader) {
ForEach(fruit, id: \.self) { item in
NavigationLink(destination: FruitDetailView(driedFruit: item)) {
FruitRowView(driedFruit: item)
.padding(.vertical, 4)
}
}
}
}
.navigationTitle("Category")
.navigationBarItems(trailing:
Button(action: {
isShowingSettings = true
}) {
Image(systemName: "slider.horizontal.3")
} //: BUTTON
.sheet(isPresented: $isShowingSettings, content: {
SettingsView()
})
)
} //: NAVIGATION
.navigationViewStyle(StackNavigationViewStyle())
}
var fruitHeader: some View {
Text("Fruits").padding(.leading, -10)
}
var driedFruitHeader: some View {
Text("Dried fruits").padding(.leading, -10)
}
}
// MARK: - PREVIEW
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView(fruit: fruitData, driedFruit: driedFruitData)
}
}
【问题讨论】:
-
您能描述一下您希望看到的情况与您正在经历的情况吗?
-
我创建了 2 个数据文件(FruitData 和 DriedFruitData)。为了使它们不同,我想创建标题。 FruitData 通过但不通过 DryFruitData。它给了我这个错误“编译器无法在合理的时间内对该表达式进行类型检查;尝试将表达式分解为不同的子表达式”,然后在 var fruitHeader 和 var dryFruitHeader 处出现这两个错误“预期'('在函数声明的参数列表中 - 函数声明主体中应为“{” - 实例方法声明中应为“func”关键字插入“func””
-
@Doodi 只需删除这两个 var 并删除多余的空间,然后再添加它会修复