MouseDown事件阻止NSCollectionView委托方法

时间:2017-02-20 14:31:56

标签: swift macos events mousedown nscollectionview

我想通过双击NSCollectionView中的项目来实施操作。在mouseDown无集合视图中使用NSCollectionViewItem事件时,委托方法不再被触发,属性isSelected也不起作用:

mouseDown中的NSCollectionViewItem.swift事件:

override func mouseDown(with event: NSEvent) {

    if event.clickCount > 1 {
        //do something
    }
}

如何同时处理CollectionViewItemsCollectionView委托方法上的点击事件?

NSTableviewNSOutlineView以外,doubleAction没有实施NSCollectionView方法。这很难过。

谢谢!

1 个答案:

答案 0 :(得分:0)

如果您覆盖mouseDown(with event: NSEvent),请记得在其中调用super.mouseDown(with: event);否则,您的collectionView委托方法将不会被调用。

我回答这个问题并不是为了在上面的评论中窃取@Willeke解决方案,而只是因为我不想让别人错过他的评论(完美的观点)!如果Willeke想回答,我会删除它。