默认情况下,我们使用NSOpenPanel类方法打开一个打开的面板:-beginSheetForDirectory:file:types:modalForWindow:modalDelegate:didEndSelector:contextInfo:但我发现有些软件可以打开带有新文件夹按钮的打开面板,包含XCode,怎么弄明白?非常感谢!
由于NSOpenPanel继承自NSSavePanel,您可以使用NSSavePanel的setCanCreateDirectories
方法,如下所示:
// Show an 'Open' dialog box allowing save folder selection.
NSOpenPanel *open = [NSOpenPanel openPanel];
[open setCanChooseFiles:NO];
[open setAllowsMultipleSelection:NO];
[open setCanChooseDirectories:YES];
[open setCanCreateDirectories:YES];
[open setTitle:@"Open Panel Title"];
[open setPrompt:@"Select Button Title"];
回到OS X 10.2.x天,有一个私有方法,_setIncludeNewFolderButton
,做了同样的事情,但它在Panther中删除了。不要尝试使用它 - 您的应用程序将崩溃。
迅速:
let picker = NSOpenPanel()
picker.canCreateDirectories = true
picker.runModal()