VStack внутри ForEach внутри Array[Views] ⇐ IOS
-
Anonymous
VStack внутри ForEach внутри Array[Views]
Получаю размер массива = 1, но я добавляю в него 4 объекта, которые отображаются.
В SwiftUI я помещаю VStack внутри цикла ForEach в массив, содержащий представления. который, используя приведенные выше данные, создает только 1 шаг с 4 объектами.
По сути, я анализирую объект модели данных из API и использую эту модель для создания динамических представлений.
К вашему сведению: я впервые использую SwiftUI и передаю эту модель из моего UIKit ViewController в файл SwiftUI View.
Парам проходит и работает нормально.
Кроме того, я создаю StepperView для отслеживания, как при доставке посылок.
Вставляю сюда свой код UIClass для лучшего понимания. (Я вставил только основной код, необходимый для понимания, поэтому не беспокойтесь о других реализациях StepperView)
struct TrackingStepperView: Просмотр { var TrackingData: [TrackingModel]? init(параметр: [TrackingModel]?) { self.trackingData = параметр } var body: some View { пусть шаги = [ ForEach(trackingData!) {элемент в VStack(выравнивание: .leading) { Текст(item.getTitle()!).eraseToAnyView() Текст(item.getDescription()!).eraseToAnyView() Текст(item.getDateTime()!).eraseToAnyView() } .background(Цвет(UIColor.clear)) } ] let _ = print("steps.count = ",steps.count) СтепперВью() .addSteps(шаги) } } А также, если я попытаюсь работать с массивами, как в Swift UIKit. Получение следующих ошибок
[*]StepperView() Тип «любое представление» не может соответствовать «представлению». [*]Типы могут соответствовать протоколам [*]Тип «()» не может соответствовать «View». [*]Тип «()» не может соответствовать «AccessibilityRotorContent». [*]Вводить «любой вид» нельзя. соответствует «Просмотру».
Спасибо, что нашли время прочитать это.
Получаю размер массива = 1, но я добавляю в него 4 объекта, которые отображаются.
В SwiftUI я помещаю VStack внутри цикла ForEach в массив, содержащий представления. который, используя приведенные выше данные, создает только 1 шаг с 4 объектами.
По сути, я анализирую объект модели данных из API и использую эту модель для создания динамических представлений.
К вашему сведению: я впервые использую SwiftUI и передаю эту модель из моего UIKit ViewController в файл SwiftUI View.
Парам проходит и работает нормально.
Кроме того, я создаю StepperView для отслеживания, как при доставке посылок.
Вставляю сюда свой код UIClass для лучшего понимания. (Я вставил только основной код, необходимый для понимания, поэтому не беспокойтесь о других реализациях StepperView)
struct TrackingStepperView: Просмотр { var TrackingData: [TrackingModel]? init(параметр: [TrackingModel]?) { self.trackingData = параметр } var body: some View { пусть шаги = [ ForEach(trackingData!) {элемент в VStack(выравнивание: .leading) { Текст(item.getTitle()!).eraseToAnyView() Текст(item.getDescription()!).eraseToAnyView() Текст(item.getDateTime()!).eraseToAnyView() } .background(Цвет(UIColor.clear)) } ] let _ = print("steps.count = ",steps.count) СтепперВью() .addSteps(шаги) } } А также, если я попытаюсь работать с массивами, как в Swift UIKit. Получение следующих ошибок
[*]StepperView() Тип «любое представление» не может соответствовать «представлению». [*]Типы могут соответствовать протоколам [*]Тип «()» не может соответствовать «View». [*]Тип «()» не может соответствовать «AccessibilityRotorContent». [*]Вводить «любой вид» нельзя. соответствует «Просмотру».
Спасибо, что нашли время прочитать это.
Мобильная версия