NSCollectionView拖放支持Swift 4

时间:2018-12-21 12:17:47

标签: swift drag-and-drop nscollectionview

我有NSCollectionView,阅读了很多有关拖放的内容,但似乎无法使其工作。可能我缺少某些东西...

基本上,我想要实现的是将任何图像从桌面,文档或任何地方拖放到NSCollectionView并在那里进行处理。

到目前为止我所做的:

collectionView.registerForDraggedTypes([NSPasteboard.PasteboardType.fileURL])

func collectionView(_ collectionView: NSCollectionView,
                    validateDrop draggingInfo: NSDraggingInfo,
                    proposedIndex proposedDropIndex: UnsafeMutablePointer<Int>,
                    dropOperation proposedDropOperation: UnsafeMutablePointer<NSCollectionView.DropOperation>) -> NSDragOperation {
    print(draggingInfo)
    return NSDragOperation.every
}

func collectionView(_ collectionView: NSCollectionView,
                    acceptDrop draggingInfo: NSDraggingInfo,
                    index: Int,
                    dropOperation: NSCollectionView.DropOperation) -> Bool {
    print(draggingInfo)
    return true
}

我认为我需要这些,但是它们似乎没有用...有什么建议吗?

p.s。正如maddy所说,事实证明Apple尚未解决xcode中的问题。不敢相信,但这是现实。

func collectionView(_ collectionView: NSCollectionView,
                    acceptDrop draggingInfo: NSDraggingInfo,
                    indexPath: IndexPath,
                    dropOperation: NSCollectionView.DropOperation) -> Bool {
    print(draggingInfo)
    return true
}

0 个答案:

没有答案