Swift拖放-在同一collection中一次移动多个项目

时间:2018-07-15 16:34:36

标签: ios swift drag-and-drop uicollectionview

我目前正在尝试在我的应用中实现“拖放”。我已经看过了:

https://developer.apple.com/videos/play/wwdc2017/223/

(还有一个可下载的项目,可以准确展示我要​​问的问题)

我不了解一件事,就是这样:

enter image description here

当我拖动一项时,可以将其放到同一收藏夹视图中。但是,当我拖动多个项目时,该功能不再起作用。没有“间隙”被创建,当我放下这些项目时,它们只是回到原来的位置。

这是我看不到的任何特定原因吗?因为我很想拥有这个功能。

我的意思是,我可能可以实现实际的“移动数据”部分(这只是演示项目未考虑的一种情况),但是在悬停在项目上方时,我看不到添加此“间隙”的方法。 / p>

感谢您的任何建议:)

2 个答案:

答案 0 :(得分:1)

最新的一组API(从iOS 13开始)当前不支持此功能。可以通过返回意图为.unspecified的投标并手动绘制放置指示器来实现。

请参见tweet reply from Tyler Fox, Apple engineer

答案 1 :(得分:0)

我之前没有尝试移动多个项目,但是您为单个项目“创建空间”的方式是使用collectionView.beginInteractiveMovementForItem(at: IndexPath)及其配套功能。 https://developer.apple.com/documentation/uikit/uicollectionview/1618019-begininteractivemovementforitem