集合视图动画:展开集合视图和单元格

时间:2015-08-14 13:08:06

标签: ios uicollectionview uicollectionviewcell uicollectionviewlayout

在呈现集合视图时,集合视图的框架应从零扩展到全屏大小。除此之外,集合视图中的单元格还应该从零大小到某个特定大小进行动画处理。任何人都可以建议我该怎么做?

1 个答案:

答案 0 :(得分:1)

您可以使用委托给集合视图的UICollectionViewFlowLayout并实施 collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath)

返回与整个集合视图的大小成比例的大小,但不会调整单元格的内容。您可能最好不要执行以下操作:

  1. Take a snapshot of the full-size collection view
  2. 将快照添加到包含集合视图的视图中。
  3. 删除集合视图,如有必要,将其约束保留在其父节点上。
  4. 将快照的大小设置为(0,0)
  5. 将其设置为完整尺寸。
  6. 在动画的completionHandler中,删除 快照视图并重新添加集合视图,重新添加集合视图的约束。