Unfortunetaly I get the error "Trailing closure passed to parameter of type 'FormStyleConfiguration' that does not accept a closure" and also "'init(:)' declared here (SwiftUI.Form)" in the following code:
import SwiftUI
struct ExpenseLoggingView: View {
@State private var date: Date = Date()
@State private var description: String = ""
@State private var amount: Double = 0.0
@State private var payer: User?
@ObservedObject var group: Group
var body: some View {
NavigationView {
Form {
Section(header: Text("Expense Details")) {
DatePicker("Date", selection: $date, displayedComponents: .date)
TextField("Description", text: $description)
TextField("Amount", value: $amount, formatter: NumberFormatter())
}
Section(header: Text("Payer")) {
// Payer selection
Picker("Payer", selection: $payer) {
ForEach(group.friends) { friend in
Text(friend.name).tag(friend as User?)
}
}
}
Section {
Button("Submit Expense") {
if let payer = payer {
let expense = Expense(id: UUID(), date: date, description: description, amount: amount, payer: payer, participants: group.friends)
group.expenses.append(expense)
}
}
}
}
.navigationBarTitle("Add Expense")
.navigationBarItems(leading: Button("Home") {
// Navigate back to HomeView
}, trailing: Button("Share") {
})
}
}
}
struct ExpenseLoggingView_Previews: PreviewProvider {
static var previews: some View {
ExpenseLoggingView(group: Group(id: UUID(), name: "Sample Group", members: [User(id: UUID(), name: "Alice", email: "alice@example.com"), User(id: UUID(), name: "Bob", email: "bob@example.com")], expenses: []))
}
}
I would appreciate any help! :)