编辑:它发生在 iOS 14.2 - 14.5 上,但不是 14.1 或 14.0。这是 SwiftUI 回归。到目前为止我还不知道解决方法。
当用户滚动时,我在 SwiftUI 列表选择方面遇到问题。滚动到屏幕外然后再次可见的选定单元格不会显示为选定状态。
我错过了什么还是这是一个 SwiftUI 错误?
内部 SwiftUI 列表协调器似乎正在使用 UITableView,并且无法正确更新选择状态的单元格状态。
struct Item: Identifiable, Hashable {
let id: Int
}
class ViewModel: ObservableObject {
@Published var selectedItems: Set<Int>
@Published var items: Array<Item>
init() {
self.items = [Item(id: 1), Item(id: 2), Item(id: 3), Item(id: 4), Item(id: 5),
Item(id: 6), Item(id: 7), Item(id: 8), Item(id: 9), Item(id: 10),
Item(id: 11), Item(id: 12), Item(id: 13), Item(id: 14), Item(id: 15),]
self.selectedItems = []
} …Run Code Online (Sandbox Code Playgroud)