Objective c Cocoa:拖放任何文件类型

Objective c Cocoa:拖放任何文件类型,objective-c,cocoa,drag-and-drop,file-type,Objective C,Cocoa,Drag And Drop,File Type,我正在尝试创建一个拖放区域,该区域接受任何文件类型,并将其上载到服务器(使用ASIHTTPRequest)。我看了苹果公司提供的以下示例: 但它只涉及图像的拖放。如何设置拖放操作以处理任何文件类型 谢谢。根据这一点判断,您可能只需要将视图注册为NSFilenamesPboardType,而不是imagePastBoardTypes,即可接收任意文件类型。有点相关,但如果对某人有帮助,请添加此项: 如果您只是想处理拖到应用程序图标上的任何文件(不需要是基于文档的应用程序): 在h中: - (vo

我正在尝试创建一个拖放区域,该区域接受任何文件类型,并将其上载到服务器(使用ASIHTTPRequest)。我看了苹果公司提供的以下示例:

但它只涉及图像的拖放。如何设置拖放操作以处理任何文件类型


谢谢。

根据这一点判断,您可能只需要将视图注册为
NSFilenamesPboardType
,而不是
imagePastBoardTypes
,即可接收任意文件类型。

有点相关,但如果对某人有帮助,请添加此项:

如果您只是想处理拖到应用程序图标上的任何文件(不需要是基于文档的应用程序):

在h中:

- (void)application:(NSApplication *)sender openFiles:(NSArray *) fileNames;
In.m:

- (void)application:(NSApplication *)sender openFiles:(NSArray *) fileNames {
    NSLog(@"Files dragged on: %@", fileNames);
}
在xxx.plist中,在CbundleDocumentTypes下创建一个新条目:

<key>CFBundleDocumentTypes</key>
<array>
    <dict>
        <key>CFBundleTypeExtensions</key>
        <array>
            <string>*</string>
        </array>
        <key>CFBundleTypeName</key>
        <string>NSFilenamesPboardType</string>
        <key>CFBundleTypeRole</key>
        <string>None</string>
    </dict>
</array>
CbundleDocumentTypes
CbundleTypeExtensions
*
CbundleTypeName
NSFileNamesPardType
CbundleTypeRole
没有一个