swift – 在垂直无限滚动的UICollectionView中显示需求中的单元格

前端之家收集整理的这篇文章主要介绍了swift – 在垂直无限滚动的UICollectionView中显示需求中的单元格前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想知道如何使用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函数调用它时,滚动保持在同一个地方并加载新数据.

在上面的代码中,您可以使用活动指示器视图或您要添加代码中的任何其他内容.

猜你在找的Swift相关文章