小编mih*_*imi的帖子

从集合视图单元格拖动适用于 iPad 模拟器,但不适用于 iPhone 模拟器或 Swift 4 中的真实设备

我在 swift 4 中使用新的拖放 api。我需要通过长按它来拖动一个单元格并将图像放在视图控制器的视图上。这是在同一个应用中拖拽,因为它需要在iPhone上运行,而这个功能只在同一个应用中的手机上运行。我使用真实设备来测试我所写的内容,但我无法弄清楚为什么一旦我点击了一个单元格就无法拖动它。但是在 iPad 上运行模拟器......它有效,我可以拖动它。我已经查看了苹果的文档,他们指定可以在拖动过程中配置拖动项的外观,但默认情况下,如果不存在委托函数的自定义实现或返回 nil,则将拖动整个单元格;所以它应该仍然有效,它在 iPad 上的模拟器中执行此操作,但不在模拟 iPhone 或真实 iPhone 上执行。代码清单如下。也许有人已经解决了这个问题并且知道如何帮助我。谢谢你。只有相关位:

class DefineRoomPropertiesVC: UIViewController {

//MARK: - Init.
override func viewDidLoad() {
    super.viewDidLoad()
    view.backgroundColor = .white
    setupTopMenuBar()
    setupViews()

    topMenuCollectionView.dragDelegate = self
}
   fileprivate let topMenuCollectionView: TopMenuBarCollectionView = {
    let layout = UICollectionViewFlowLayout()
    let collectionView = TopMenuBarCollectionView(frame: .zero, collectionViewLayout: layout)
    return collectionView
}()
Run Code Online (Sandbox Code Playgroud)

}

extension DefineRoomPropertiesVC: UICollectionViewDragDelegate {
func collectionView(_ collectionView: UICollectionView, itemsForBeginning session: UIDragSession, at indexPath: IndexPath) -> [UIDragItem] { // called when a drag is initiated. …
Run Code Online (Sandbox Code Playgroud)

drag-and-drop swift4

1
推荐指数
1
解决办法
833
查看次数

标签 统计

drag-and-drop ×1

swift4 ×1