如何在 SwiftUI 或无限列表视图中实现列表分页?
How do you implement list paging in SwiftUI or infinite list view?
我需要有关如何提前在SwiftUI.Thanks中实现无限列表滚动或分页列表的帮助
最好的办法是使用 .onAppear
并计算是否到了获取下一页的时间。这是一个人为的例子,因为通常你正在访问比这慢得多的网络或磁盘,但它会给你一个想法。针对您的特定用例调整 getNextPageIfNecessary(_:)
。
@State var rows: [String] = Array(repeating: "Item", count: 20)
var body: some View {
List(0..<rows.count, id: \.self) { index in
Text(verbatim: self.rows[index])
.onAppear {
self.getNextPageIfNecessary(encounteredIndex: index)
}
}
}
private func getNextPageIfNecessary(encounteredIndex: Int) {
guard encounteredIndex == rows.count - 1 else { return }
rows.append(contentsOf: Array(repeating: "Item", count: 20))
}
我需要有关如何提前在SwiftUI.Thanks中实现无限列表滚动或分页列表的帮助
最好的办法是使用 .onAppear
并计算是否到了获取下一页的时间。这是一个人为的例子,因为通常你正在访问比这慢得多的网络或磁盘,但它会给你一个想法。针对您的特定用例调整 getNextPageIfNecessary(_:)
。
@State var rows: [String] = Array(repeating: "Item", count: 20)
var body: some View {
List(0..<rows.count, id: \.self) { index in
Text(verbatim: self.rows[index])
.onAppear {
self.getNextPageIfNecessary(encounteredIndex: index)
}
}
}
private func getNextPageIfNecessary(encounteredIndex: Int) {
guard encounteredIndex == rows.count - 1 else { return }
rows.append(contentsOf: Array(repeating: "Item", count: 20))
}