我正在使用 swift 3 编写一个具有 UIViewController
的应用程序,如下图所示。它在顶部包含一个水平滚动的collectionView
(蓝色 block ),它的功能是在不同的标签之间切换(first, prev, current, next, last...etc, total amount标签不固定)。我需要实现的是,在滚动(或平移) Collection View 时,'NEXT' 或 'PREV' 应该移动(并自动锚定)到中心类似于分页动画的速度。我怎么能做到这一点?目前,我使用 scrollView
的 Paging Enabled
属性,但这仅在窗口中只有一个标签时有效。
类似的功能可能看起来像 iTunes 应用程序的中间“相册”部分,一旦检测到任何滑动/平移手势,collectionView 单元格就会自动滚动到某个预定义的点,并带有一些动画。
最佳答案
根据你的评论,如果你想做点击选择的事情,你需要做两件事
1- 在 viewDidLoad 中禁用 Collection View 滚动
collectionView.isScrollingEnabled = false
2- 在中心显示选定的单元格,将其添加到您的 didSelectItemAtIndexPath 方法中
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
collection.selectItem(at: indexPath, animated: true, scrollPosition: .centeredHorizantally)
let cell = collectionView.cellForItem(at : indexPath) as! YourCollectionViewCellClass
cell.titleLable.font = UIFont.boldSystemFont(ofSize : 20)
}
关于ios - 如何为滚动到中心的 collectionView 单元格制作分页动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45808301/