ios - 可重新排序的自定义 CollectionView 布局

标签 ios swift uicollectionview uicollectionviewlayout

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

`collectionView.updateInteractiveMovementTargetPosition(_:position)`.

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

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

因此,我将一个 longPress 手势识别器附加到我的 Collection View 中。

最佳答案

几个月前我遇到了这个问题,你无法重新加载选定的单元格,唯一的方法是重新加载整个 Collection View 。如果您还有其他解决方案,请分享给我。谢谢

关于ios - 可重新排序的自定义 CollectionView 布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39545536/

相关文章:

swift - typealias 无法使用 producing Cannot invoke initializer Error

ios - 使用 invalidateLayout 调用的高级 UICollectionView 动画

swift - 显示键盘时不要滚动 collectionview

ios - 在不同设备上动态设置 Collection View 单元格大小

ios - DateComponentsFormatter - 仅显示描述为分钟的小时 - 错误?

ios - 如何让程序在继续执行下一个命令之前等待异步 NSURLConnection 完成?

iOS Quickblox 聊天 : getting error: Code=-999 "You need to enable stream management to use this feature

ios - xcodebuild 没有显示所有编译错误?

ios - 如何使用 Swift 创建自定义类加载 View

ios - 如何在 ios 中更改导航栏标题