问题描述
我有一个相当标准的UICollectionView,可以在iOS中按预期方式进行拖放。但是,在使用Mac Catalyst转换为Mac应用程序后,第一次将拖放的项目放到自身上(让我们在indexPath X上调用它),不调用performDropWith,并且发生以下情况:
-
UIDragSession似乎被冻结,因此任何新的拖动会话都将目标indexPath固定为X
-
UIDragSession不会为下一次拖动而重新创建,您可以通过查看会话的内存地址来对其进行检查
此行为仅在应用程序的Mac Catalyst版本上可见,而iOS应用程序正确地取消分配了拖动会话并创建了一个新会话,而与该物品的放置位置无关。
我正在使用Xcode 12.0版和Swift 5.0版
要查看此问题,您可以下载此示例项目,将mac用作目标,然后尝试在mac应用中将其自身拖放到某个项目上(此后,拖放将基本上被破坏): https://github.com/pgpt10/DragAndDrop-CollectionView
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)