我已经创建了NSImageView的一个子类,并实现了用于在同一类的其他实例之间拖动图像的非正式协议。我保留了在拖动操作之前对视图图像的引用,并且能够在给定一定标准的情况下将其设置回所述图像。
但是,我似乎无法检测到是否取消了拖动操作。我知道调用了draggingEnded方法,但它也是在拖动成功时调用的。有什么想法吗?
发布于 2011-07-12 00:28:34
我遇到了类似的需求。您可以检查传递给NSDraggingSource协议方法draggedImage:endedAt:operation:的operation参数以检测取消拖动这一事实并没有得到很好的说明。
在draggedImage:endedAt:operation:方法中,只需添加以下检查:
if (operation == NSDragOperationNone)
return;
// Otherwise perform any drag completion tasks.https://stackoverflow.com/questions/3224453
复制相似问题