iOS swift 如何使集合视图水平滚动,向左和向右两个方向无限滚动

how to make a collection view to scroll horizontally having infinite scroll in both directions left, as well as right in iOS swift

我想要一个水平滚动的collection view,可以左右滚动,现在它只能在右方向连续滚动,如何在左侧实现?

let itemcount = array?.count ?? 0
func scrollViewDidScroll(_ scrollView: UIScrollView) {
                if scrollView == DemoCollectionView {
                    let offSet = scrollView.contentOffset.x
                    let width = scrollView.frame.width
                    let horizontalCenter = width / 2
                    let currentPage = Int(offSet + horizontalCenter) / Int(width)
                    if currentPage >= itemCount / 2 {
                        itemCount += array?.count ?? 0
                        DemoCollectionView.reloadData()
                    }
                }
            }

您可以使用“scrollToItemAtIndexPath”方法来完成。您可以从滚动视图委托方法中获得的滑动方向。

从右向左滚动

collectionView?.scrollToItemAtIndexPath(NSIndexPath(forItem: dataArray.count - 1, inSection: 0), atScrollPosition: .Right, animated: false)

从左向右滚动

collectionView?.scrollToItemAtIndexPath(NSIndexPath(forItem: 0, inSection: 0), atScrollPosition: .left, animated: false)

您还可以对集合视图应用转换以获得类似效果。