Я столкнулся с каким-то удивительным поведением представления списка SwiftUI. Представление «Список» вызывается с привязкой, которая уже содержит некоторые выбранные элементы. Я знаю, что они существуют. Мои данные длиннее, чем те, которые могут быть показаны на экране. Все выбранные элементы в видимой части уже отображаются должным образом, но когда я прокручиваю список вниз, чтобы найти другие, они не отображаются сразу. Я должен подождать несколько минут, прежде чем они покажут.
Вот код, который генерирует список:
import SwiftUI
struct ArtistView: View {
@State private var editMode = EditMode.active
@Binding var selection : Set<String>
var artists = [String]()
var body: some View {
List(selection: self.$selection) {
ForEach (self.artists, id: \.self) {artist in
Text(artist)
}
}
.environment(\.editMode, self.$editMode)
}
}
Вот код, который вызывает ArtistView:
NavigationLink(destination: ArtistView(selection: self.$selection, artists: self.settings.artists)) {
Text("Select Artists:")
}
Кто-нибудь видел такое поведение и что более важно, есть ли способ ускорить эту проблему?
Спасибо