У меня есть пример для автопрокрутки в виде коллекции, например ganna.com в приложениях для iOS или Android.
Для Swift 4.2
код:
var timer: Timer?
@IBOutlet weak var collectionView : UICollectionView!
@IBOutlet weak var pageControl: UIPageControl!
override func viewDidLoad() {
super.viewDidLoad()
collectionView.reloadData()
startTimer()
}
func startTimer() {
timer = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector(scrollAutomatically), userInfo: nil, repeats: true)
}
@objc func scrollAutomatically(_ timer1: Timer) {
for cell in collectionView.visibleCells {
if banner.count == 1 {
return
}
let indexPath = collectionView.indexPath(for: cell)!
if indexPath.row < (banner.count - 1) {
let indexPath1 = IndexPath.init(row: indexPath.row + 1, section: indexPath.section)
collectionView.scrollToItem(at: indexPath1, at: .right, animated: true)
pageControl.currentPage = indexPath1.row
}
else {
let indexPath1 = IndexPath.init(row: 0, section: indexPath.section)
collectionView.scrollToItem(at: indexPath1, at: .left, animated: true)
pageControl.currentPage = indexPath1.row
}
}
}
banner.Count
=> количество ячеек, содержащих представление коллекции
Надеюсь, вы найдете это полезным.