При попытке создать проект Xcode с использованием SwiftUI я получаю следующую ошибку.
Я получаю сообщение об ошибке: «Компилятор не может проверить это выражение в разумные сроки; попробуйте разбитьВыражение в различные подвыражения "
Я попытался убрать много сложностей кода, чтобы максимально упростить его. Я также попытался уменьшить количество строк в Пикере, чтобы проверить, были ли это проблемы.
struct ContentView: View {
// set child name
@State private var childName: String = ""
// set the days of the week
let daysOfWeek = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]
// set empty
@State private var selectedAttendance: String = ""
let attendance = ["None", "All Day", "AM", "PM"]
@State private var mondayAttendance = 0
@State private var tuesdayAttendance = 0
@State private var wednesdayAttendance = 0
@State private var thursdayAttendance = 0
@State private var fridayAttendance = 0
@State private var selectedProvider = 0
let providers = ["School 1", "School 2", "School 3", "School 4", "School 5"]
var body: some View {
NavigationView {
Form {
Section(header: Text("Your Child's Details")) {
TextField("Name", text: $childName)
}
// PICKER to choose childcare provider
Section(header: Text("Who looks after your child?")) {
Picker("Childcare Provider", selection: $selectedProvider) {
ForEach(0 ..< providers.count) {
Text("\(self.providers[$0])")
}
}
}
Section(header: Text("Which days does your child attend?")) {
VStack {
// Monday
HStack {
Text("Monday")
.dayOfWeek()
Picker("Monday", selection: $mondayAttendance) {
ForEach(0 ..< 4) {
Text("\(self.attendance[$0])")
}
}
.pickerStyle(SegmentedPickerStyle())
}
// Tuesday
HStack {
Text("Tuesday")
.dayOfWeek()
Picker("Tuesday", selection: $tuesdayAttendance) {
ForEach(0 ..< 4) {
Text("\(self.attendance[$0])")
}
}
.pickerStyle(SegmentedPickerStyle())
}
//
// // Wednesday
// HStack {
// Text("Wednesday")
// .dayOfWeek()
// Picker("Wednesday", selection: $wednesdayAttendance) {
// ForEach(0 ..< 4) {
// Text("\(self.attendance[$0])")
// }
// }
// .pickerStyle(SegmentedPickerStyle())
// }
}
}
}
.navigationBarTitle("Your Child")
}
}
}
Когда я пытаюсь построить, показывая только «Понедельник» и «Вторник», это работает. Как только я раскомментирую среду (или больше), сборка завершится неудачно, и я получу ошибку.
Я понимаю, что мне нужно упростить код, но это уже довольно просто, и я не уверен, где взятьэто следующий.
Любая помощь очень ценится.