swift – 在垂直无限滚动的UICollectionView中显示需求中的单元
发布时间:2020-12-14 05:46:13 所属栏目:百科 来源:网络整理
导读:我想知道如何使用UICollectionView实现所需的加载效果,就像在亚马逊应用程序中进行搜索一样,它只返回一些项目,直到滚动结束,然后加载指示器设置为加载更多细胞继续,直到它显示的搜索中的所有产品. 像下面这样的图片: 通常你必须设置numberOfItemsInSection,
我想知道如何使用UICollectionView实现所需的加载效果,就像在亚马逊应用程序中进行搜索一样,它只返回一些项目,直到滚动结束,然后加载指示器设置为加载更多细胞继续,直到它显示的搜索中的所有产品.
像下面这样的图片: 通常你必须设置numberOfItemsInSection,数据源的项目数,它是如何的方式?,你设置项目的总数,然后加载它懒惰或什么? 提前致谢.
使用上面的crazy_phage之类的scrollViewDidScroll函数,您可以观察到最终到达CollectionView的最后时间,然后您可以更新numberOfRowInSections并以下列方式调用reloadData:
class CollectionSampleViewController: UICollectionViewController { private let reuseIdentifier1 = "Cell" private var numberOfItemsPerSection = 9 override func viewDidLoad() { super.viewDidLoad() } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } override func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int { return 1 } override func collectionView(collectionView: UICollectionView,numberOfItemsInSection section: Int) -> Int { return numberOfItemsPerSection } override func scrollViewDidScroll(scrollView: UIScrollView) { let offsetY = scrollView.contentOffset.y let contentHeight = scrollView.contentSize.height if offsetY > contentHeight - scrollView.frame.size.height { numberOfItemsPerSection += 6 self.collectionView.reloadData() } } } 当reloadData函数调用它时,滚动保持在同一个地方并加载新数据. 在上面的代码中,您可以使用活动指示器视图或您要添加到代码中的任何其他内容. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |