可重新排序的自定义 collectionview 布局

Posted

技术标签:

【中文标题】可重新排序的自定义 collectionview 布局【英文标题】:Re-orderable custom collectionview layout 【发布时间】:2016-09-17 10:08:13 【问题描述】:

我将UIcollectionViewLayout 子分类以创建自己的布局。在prepareLayout() 方法中,我为每个单元格的属性创建框架,因为我知道它们应该在哪里。每个单元格的帧都是硬编码的。但是,我不能硬编码框架的位置,因为我希望能够拖放单元格。 UICollectionViews 有很好的功能:

`collectionView.updateInteractiveMovementTargetPosition(_:position)`.

但如果单元格的位置是硬编码的,则此函数无法更改单元格的位置。

此外,如果单元格不在其位置,它似乎会从视图中消失。我想在开始拖动单元格时动态更改单元格的位置。我应该在某个地方打电话给invalidateLayout()吗?我有一个UICollectionView 作为我的subviewUIViewcontroller

所以我在我的收藏视图中附加了一个longPress 手势识别器。

【问题讨论】:

【参考方案1】:

几个月前我遇到了这个问题,您无法重新加载选定的单元格,唯一的方法是重新加载整个集合视图。如果您有任何其他解决方案,请分享我。谢谢

【讨论】:

以上是关于可重新排序的自定义 collectionview 布局的主要内容,如果未能解决你的问题,请参考以下文章

带有collectionview的自定义菜单栏

在我的自定义 collectionView 布局中未调用 prepare()

QTableView的自定义排序方法?

重新排序 CollectionView 单元格 iOS 11

以编程方式从 collectionView 内的自定义 tableView 中进行 Segue

如何在 swift ios 的自定义 collectionView 单元中将字符串值显示到多个标签?