在UICollectionViewFlowLayout

时间:2017-05-02 14:22:28

标签: ios swift swift3 uicollectionview uicollectionviewlayout

我有一个UICollectionView有两个布局(列表样式,如uitableview和gallery样式,是一个全屏水平项目卷轴)。

单元格包含单个图像和两个标签(标题和说明)。在列表布局中,图像位于左侧,标签位于右侧。在画廊布局中,图像是全宽和&高度为50%,标签位于下方。像这样:

enter image description here

在这两种布局之间切换时的默认动画太简单了,请将单元格移动到布局中的新位置。但是我想制作更具体的动画。

具体来说,这些是我希望动画从列表到图库视图时采取的粗略步骤:

  1. 淡出除第一个可见细胞(又称细胞1)
  2. 之外的所有细胞
  3. 淡出单元格1中的标签
  4. 将单元格1中图像的宽度增加到100%
  5. 将细胞1的高度增加到全屏(细胞生长后的图像高度 - 达到40%的高度)
  6. 淡入单元格1的标签
  7. 显示其他单元格(虽然它们应该在屏幕外 - 所以这可能不是必需的)
  8. 图库的步骤几乎相反 - >列表布局更改。

    UICollectionViewFlowLayout非常适合我想要实现的布局,我只想对动画进行更精细的控制,以便我可以制作这个“阶梯式动画”(或者这就像关键帧动画一样?)

    它可能并不重要 - 但我尽可能使用自动布局约束(通过SnapKit),我想尽可能地保持这一点。

    当然我不希望有人为我编程所有这些,但谷歌并没有帮我找到从哪里开始。

    有人可以指出我正确的方向,我需要在哪些方法上实现/覆盖哪些类,可能还有一些伪代码?

0 个答案:

没有答案