将多个文件拖到沙盒应用中

时间:2012-08-23 17:38:38

标签: objective-c xcode macos sandbox finder

我正在构建一个简单的应用程序,允许用户将视频文件列表从Finder拖到我的应用程序中。我正在阅读Apple docs about dragging files并且说:

  

重要即可。虽然您可以支持拖动文件路径,但一般情况下,您应该避免这样做,除非您确定目标应用程序永远不会在应用程序沙箱中运行。如果使用NSString,OS X无法知道该字符串是否应该被解释为路径;因此,OS X不会扩展目标应用程序的沙箱,以允许访问该位置的文件或目录。   而是使用NSURL,书签或文件名粘贴板类型。

不幸的是,文档还说使用NSURL时,一次只能拖动一个文件。我的应用程序是沙箱。

我错过了什么吗?谢谢!

1 个答案:

答案 0 :(得分:3)

NSFilenamesPboardType是您的解决方案。它支持在app沙箱中操作时拖动多个文件。

你给出的报价支持:

  

相反,请使用NSURL,书签或文件名粘贴板类型

有关如何从NSFilenamesPboardType接收文件链接的信息,请参阅此处的Apple doc。

Receiving Drag Operations