小编rgi*_*ipd的帖子

在 UICollectionView 中使用动态大小的单元格重新排序自定义布局

大家好!

因此,我为 UICollectionView 制作了自定义布局。此自定义布局支持动态单元格大小调整(仅更改单元格的宽度)。

此外,UICollectionView 具有拖放功能,使用户能够对单元格重新排序。

  • 关闭动态单元格大小后,重新排序不会出现任何问题(GIF
  • 启用动态单元格大小,在拖动动画期间重新排序会出现一些问题(如下所示)。

示例项目位于此 Github 存储库中:

https://github.com/rgipd/uicollectionview-reorder-error

Github 的 README.md 文件也列出了所有错误。

我已经阅读了一些博客和答案,例如:

https://nshint.github.io/blog/2015/07/16/uicollectionviews-now-have-easy-reordering/

另外,我确实实现了该invalidationContextForInteractivelyMovingItems...方法,但是,即使使用本文中的 NSHint 示例(您可以下载),当您拖动一个小单元格以占据较大单元格的空间时,某些单元格会被替换并出现错误!此外,单元格与中间的光标保持交换,因为对 moveAt 方法的硬编码调用(可能)。文章作者示例中的问题位于 Github 存储库的 Wiki 中:

https://github.com/rgipd/uicollectionview-reorder-error/wiki/NSHint-reorder-collection-view-error

任何人都可以帮我解决这个问题吗?

提前致谢!

更新:2020 年 7 月 28 日 没有新内容。也无法使用简单的水平 UICollectionView 自定义布局来做到这一点。

objective-c ios uicollectionview uicollectionviewlayout swift

5
推荐指数
0
解决办法
377
查看次数