当用户选择一个 collectionView 单元格时,我会为该单元格的框架设置动画以使其增长和重新定位,使其坐下具有以下大小/位置:
CGRectMake(114, 148, 540, 620)
如果我没有向下滚动到 collectionView 中的其他单元格,这很有效。当我在较低的单元格上尝试此操作时,它仍然有动画,但单元格会向上射击,因此 collectionView 的 y 坐标可以为 148。
我已经尝试过 convertRect 和 convertPoint 的各种变体,但我无法概念化正确的解决方案。
我需要做什么才能将选定单元格的 y 值转换为在超级视图的坐标系中移动到相当于 148 的值?
编辑:为了减少混淆
我点击我的 collectionView 底部的一个单元格(意味着我向下滚动几行),这是原点:
(x=394.5, y=4114)
这里的 x 很好,但我的 y 有问题。我想为我刚刚选择的这个单元格设置动画,使其看起来好像它的 y 坐标位于外部视图的 148 处。就像表单模式视图控制器一样。但是将该原点设置为 148 会导致单元格飞到 collectionView 的顶部,因为它一直在 4114 处下降。我怎样才能获得对用户来说看起来像 148 的正确 y 值,但实际上会是什么更接近细胞的原始起源?
编辑2:图片