cocoa - 当启用多选时,NSCollectionView 在拖动之前出现烦人的延迟

标签 cocoa drag-and-drop nscollectionview

我有一个基本的 Cocoa 应用程序,其中的 NSCollectionView 显示了许多文件。 Collection View 允许一次选择多个项目。

问题是,为了选择两个或多个项目将它们拖出 Collection View ,我必须单击并按住大约一秒钟才能开始拖动。

如果我立即单击并拖动, Collection View 将更改选择(即绘制“选择”矩形)。

我花了一段时间才弄清楚我必须在拖动之前单击并按住。我已经看到我的应用程序的许多用户无法理解这一点,并且会提示拖动不起作用。

示例:即使在 Apple 的示例代码中也存在问题:https://developer.apple.com/library/mac/#samplecode/IconCollection/Introduction/Intro.html#//apple_ref/doc/uid/DTS10004477

有趣的是,Finder 的“图标 View ”按预期工作(拖动工作没有延迟)。不确定它是否在下面使用 NSCollectionView,但似乎有可能。

最佳答案

没有办法解决这个问题。 NSCollectionView 中的所有鼠标事件都被覆盖。您唯一可以控制的是集合中包含的 NSView 的 mouseDown 事件,这对拖动延迟没有帮助。

关于cocoa - 当启用多选时,NSCollectionView 在拖动之前出现烦人的延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11120236/

相关文章:

objective-c - 如何通过拖放实现交换元素位置

ios - 如何制作不断增长的文本文件

javascript - 想通过jquery拖一个div

WPF 拖放不会触发 Command Binding.CanExecute

swift - 如何在某些特定条件下使用 swift 禁用 Collection View 中的滚动

iphone - 如何通过按栏按钮隐藏键盘

objective-c - 为什么我的数组保持为空?

objective-c - 如何暂时隐藏 UIPopoverController

cocoa - 如何将 NSImage 数组绑定(bind)到 NSCollectionView

swift - NSCollectionViewItem 从不实例化