有没有办法从一个大的对象列表中只加载几个项目并填充到 UICollectionView 中
Is there a way to load only a few items from a large list of objects and populate into a UICollectionView
我有一个包含 100 个对象的列表,但我只想加载前 10 个并将其填充到我的 UICollectionView
中,当我向下滚动时,我可以将剩余的对象填充到列表中。
这必须在 UICollectioView
和 Swift 4 及以上
中执行
如果您已经有了数组,您可以将它拆分成页面,然后显示您需要的页面:
let entries = Array(1...100).split(into: 10)
...使用此扩展程序:
extension Array {
func split(into size: Int) -> [[Element]] {
return stride(from: 0, to: count, by: size).map {
Array(self[[=11=]..<Swift.min([=11=] + size, count)])
}
}
}
然后,您可以将第一个数组显示为第一页,第二个显示为第二页,依此类推。
取自here
我有一个包含 100 个对象的列表,但我只想加载前 10 个并将其填充到我的 UICollectionView
中,当我向下滚动时,我可以将剩余的对象填充到列表中。
这必须在 UICollectioView
和 Swift 4 及以上
如果您已经有了数组,您可以将它拆分成页面,然后显示您需要的页面:
let entries = Array(1...100).split(into: 10)
...使用此扩展程序:
extension Array {
func split(into size: Int) -> [[Element]] {
return stride(from: 0, to: count, by: size).map {
Array(self[[=11=]..<Swift.min([=11=] + size, count)])
}
}
}
然后,您可以将第一个数组显示为第一页,第二个显示为第二页,依此类推。
取自here