Есть ли ограничение на количество HStacks в списке (SwiftUI)? - PullRequest
0 голосов
/ 03 февраля 2020

У меня есть список в SwiftUI, который я использую для отображения модели моего вида. Как ни странно, когда я указываю последний HStack в моем списке, представление больше не компилируется. Следующее компилируется и работает правильно:

struct LandingResultView: View {
    @Binding var dryLand: LandingViewModel
    @Binding var wetLand: LandingViewModel

    var body: some View {
        GeometryReader { geo in
            List {
                HStack {
                    Text("30T")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.throttles30)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.throttles30)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("10T")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.throttles10)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.throttles10)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("0T")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.throttles0)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.throttles0)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("30F")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.flaps30)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.flaps30)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("10F")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.flaps10)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.flaps10)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("0F")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.flaps0)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.flaps0)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("Land 30")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.landing30)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.landing30)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("Land 10")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.landing10)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.landing10)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("Land 0")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.landing0)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.landing0)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("HB")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.hb)")
                        .frame(width: geo.size.width * 0.6)
                }
            }
        }
    }
}

Следующее не компилируется и не будет отображаться. Я знаю, что SwiftUI привередлив, но я не могу понять, где я ошибаюсь:

struct LandingResultView: View {
    @Binding var dryLand: LandingViewModel
    @Binding var wetLand: LandingViewModel

    var body: some View {
        GeometryReader { geo in
            List {
                HStack {
                    Text("30T")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.throttles30)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.throttles30)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("10T")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.throttles10)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.throttles10)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("0T")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.throttles0)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.throttles0)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("30F")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.flaps30)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.flaps30)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("10F")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.flaps10)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.flaps10)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("0F")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.flaps0)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.flaps0)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("Land 30")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.landing30)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.landing30)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("Land 10")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.landing10)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.landing10)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("Land 0")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.landing0)")
                        .frame(width: geo.size.width * 0.3)
                    Text("\(self.wetLand.landing0)")
                        .frame(width: geo.size.width * 0.3)
                }
                HStack {
                    Text("HB")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.hb)")
                        .frame(width: geo.size.width * 0.6)
                }
                HStack {
                    Text("HB")
                        .frame(width: geo.size.width * 0.2)
                    Text("\(self.dryLand.hb)")
                        .frame(width: geo.size.width * 0.6)
                }
            }
        }
    }
}

Я намеренно повторил последний HStack, чтобы исключить любые потенциальные проблемы с тем, что я отображал. Любая помощь будет принята с благодарностью!

1 Ответ

1 голос
/ 03 февраля 2020

10, попробуйте с помощью группы разделить их на группы по 10.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...