Я пытаюсь создать простую форму в SwiftUI, но получаю сообщение об ошибке «Компилятор не может проверить тип этого выражения;попробуйте разбить выражение на отдельные подразделы »в представлении, возвращаемом из тела (в данном случае Form, но я также пробовал VStack). Если я начну удалять некоторые из подпредставлений, они, похоже, разрешатся, хотя ни одно из моих представлений не возвращает 10 подпредставлений напрямую, что, я считаю, является пределом для одного представления (за исключением представлений, возвращаемых в ForEach).
import SwiftUI
struct CreateDispatchView: View {
@State private var customerId: Int = 0
@State private var name: String = ""
@State private var phone: String = ""
@State private var description: String = ""
@State private var priorityId: Int = 0
@State private var callTypeId: Int = 0
@State private var bay: String = ""
@State private var poTicket: String = ""
@State private var outOfChemicals: Bool = false
@State private var isReturnCall: Bool = false
var body: some View {
Form { // <-- Error is shown here
Section {
Picker("Customer", selection: $customerId) {
ForEach(0 ..< 10) {
Text("Customer \($0)")
}
}
TextField("Name", text: $name)
TextField("Phone", text: $phone)
TextField("Description", text: $description)
TextField("Bay", text: $bay)
TextField("PO ticket", text: $poTicket)
}
Section {
Picker("Priority", selection: $priorityId) {
ForEach(0 ..< 2) {
Text("Priority \($0)")
}
}
Picker("Call type", selection: $callTypeId) {
ForEach(0 ..< 3) {
Text("Call type \($0)")
}
}
}
Section {
Toggle(isOn: $outOfChemicals) {
Text("Out of chemicals")
}
Toggle(isOn: $isReturnCall) {
Text("Is return call")
}
}
}
}
}
struct CreateDispatchView_Previews: PreviewProvider {
static var previews: some View {
CreateDispatchView()
}
}