如何使用 Mountain Lion 显示捆绑包内容[NSWorkspace selectFile:nil inFileViewerRootedAtPath:pathEndingWithDotBundle]
?我的意思是:pathEndingWithDotBundle
是一个基本名称类似于“folder.bundle”的路径。如果我这样调用这个方法,终端会打开,我不知道为什么......
问问题
119 次
1 回答
1
它会打开终端,因为它认为您要启动捆绑包,这是默认应用程序。我会为此打开一个错误报告,因为文档没有说它将打开路径。它说它将在文件查看器中显示它。这是一个错误是合理的(因为包在逻辑上不是目录;它只是物理上的目录)。但是它做一些随机的事情,比如尝试启动另一个程序是没有意义的。
也就是说,它很容易解决。只需选择Contents
文件夹,该文件夹必须包含在包中:
[[NSWorkspace sharedWorkspace] selectFile:[pathEndingWithDotBundle stringByAppendingPathComponent:@"Contents"]
inFileViewerRootedAtPath:pathEndingWithDotBundle];
在 10.6+ 中,您可以使用activateFileViewerSelectingURLs:
NSURL *URL = [NSURL fileURLWithPath:[pathEndingWithDotBundle stringByAppendingPathComponent:@"Contents"]];
[[NSWorkspace sharedWorkspace] activateFileViewerSelectingURLs:@[URL]];
于 2012-09-26T19:02:58.147 回答