SwiftUI 中的列表真的很懒吗?我有一个从 coreData 获取的 5000 个元素的列表,我想将它们显示在列表中。我读了很多评论(例如: https: //developer.apple.com/forums/thread/651256),认为列表是懒惰的,但对我来说,看起来它们不是......加载列表需要 15 秒。
List(element, id: \.objectID, selection: $selection) { file in
RowView(file)
}
Run Code Online (Sandbox Code Playgroud)
如果我使用 ScrollView + LazyVStack + ForEach 代替,加载时间不到一秒。
ScrollView {
LazyVStack(alignment: .leading, spacing: 0) {
ForEach(element, id: \.objectID) { file in
RowView(file)
.onTapGesture {
selection = Set([file.objectID])
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我更喜欢列出一个列表来利用它提供的功能。我做错了什么还是列表不懒惰?
感谢帮助!(我正在使用 SwiftUI(适用于 Mac))。