我正在将共享功能添加到我的应用程序中(目标系统为Mavericks,10.9),希望其工作方式如下:
- 用户单击共享按钮
- 光标更改为十字线
- 用户拖动所需共享内容的选择区域
- NSSharingServicePicker 显示,允许用户选择要共享的服务
我使用 -mouseDown:
、-mouseDragged:
和 -mouseUp:
事件来完成此操作。 mouseDown
开始选择,mouseDragged
提供所选区域的反馈,然后 mouseUp
完成拖动并显示选择器。但是每次都会在控制台上写入以下内容:
2014-06-25 00:13:45.111 App[31401:303] Warning: -[NSSharingServicePicker showRelativeToRect: ofView: preferredEdge:] should not be called on mouseUp
Please configure the sender with -[NSControl sendActionOn:NSLeftMouseDownMask];
我不明白为什么会成为一个问题,除非你是在鼠标松开的按钮点击时显示它。我应该忽略这个消息吗?我尝试使用dispatch_async
和dispatch_after
来显示它,以尝试在事件调用之外运行它,但它们没有起作用。我想我可以无视它,但那会不会给淘汰的机会?