registerForDraggedTypes具有自定义文件格式

时间:2010-04-09 01:15:30

标签: objective-c cocoa

Developer Documentations没有提供registerForDraggedTypes方法的完整描述。例如,我希望我的应用程序仅允许访问“* .abc”文件。我怎么能这样做?

1 个答案:

答案 0 :(得分:6)

如果您希望将文件拖到视图中,则应注册NSFilenamesPboardType类型。如果您只想接受某些文件名,则可以在performDragOperation:的实施中执行此操作。类似的东西:

- (BOOL)performDragOperation:(id < NSDraggingInfo >)sender {
    NSArray *draggedFilenames = [[sender draggingPasteboard] propertyListForType:NSFilenamesPboardType];
    if ([[[draggedFilenames objectAtIndex:0] pathExtension] isEqual:@"abc"])
        return YES;
    else
        return NO;
}