VStack внутри ForEach внутри Array[Views]IOS

Программируем под IOS
Ответить
Anonymous
 VStack внутри ForEach внутри Array[Views]

Сообщение Anonymous »


Получаю размер массива = 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». [*]Вводить «любой вид» нельзя. соответствует «Просмотру».
Спасибо, что нашли время прочитать это.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»