Проблема со списком в SwiftUIIOS

Программируем под IOS
Ответить
Anonymous
 Проблема со списком в SwiftUI

Сообщение Anonymous »

У меня есть следующее представление, состоящее из списка пулов:

Код: Выделить всё

var body: some View {

ScrollView {

ForEach(Array(self.poolStore.pools.enumerated()), id: \.element) { index, element in

NavigationLink(destination: PoolMasterViewDetails(poolMasterViewRouter: EditDetails(), pool: element)) {

smallcardView(pool: element)

}

}

}
.onAppear() {

self.fetchPoolsInDashboard()

}

}

struct smallcardView: View {

let pool: Pool

var body: some View {

VStack() {

HStack {

if (pool.type == "Survivor") {

Image("survival")
.resizable()
.frame(width: 120, height: 90)
.cornerRadius(10)

} else {

Image("pickem")
.resizable()
.frame(width: 120, height: 90)
.cornerRadius(10)

}

VStack(alignment: .leading) {

Spacer()

Text(pool.name)
.foregroundColor(Color.textColor)
.font(.title3)
.frame(width: 225, alignment: .leading)
.padding(.bottom, 0.1)

Text(pool.id)
.foregroundColor(Color.textColor)
.font(.system(size: 16))

Spacer()

}
.padding(.leading)

Spacer()

}

}
.padding()
.frame(maxWidth: .infinity)
.frame(height: 120)

}

}
Pool Store сортирует элементы следующим образом:

Код: Выделить всё

let sortedArray = self.pools.sorted {

$0.id < $1.id

}
ЕСЛИ список содержит несколько пулов на панели пользователей, если пользователь нажимает, например, последний элемент в списке, происходит переход к подробному просмотру пула.
Когда они возвращаются на панель управления (список пулов), выбранный ими элемент оказывается вверху списка, а не внизу списка (как ожидалось). Список также прокручивается до верхней части списка в представлении информационной панели!?
Поскольку список также упорядочен по идентификатору пула, поэтому он был в позиции в самом низу списка!?
Я не знаю, как это исправить.
Я ожидаю, что пользователь нажмет на элемент в списке, переходит к подробному представлению, а когда они возвращаются назад, список находится в том же порядке (по идентификатору пула) и что пользователь находится в том же месте прокрутки или местонахождении, что и элемент, на который он щелкнул.
Может ли кто-нибудь что-нибудь рассказать по этому поводу, знаете ли вы, является ли это ошибкой в ​​SwiftUI?

Подробнее здесь: https://stackoverflow.com/questions/785 ... in-swiftui
Ответить

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

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

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

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

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