有没有办法添加项目
它不指向文件系统中存在的文件
打开最近的菜单?
在不基于NSDocument的应用程序中,我可以使用以下代码将项目添加到“Open Recent”子菜单:
[[NSDocumentController sharedDocumentController] noteNewRecentDocumentURL:[NSURL URLWithString:stringToFilePath]];
它的工作原理是
documented
如果url没有指向系统上的文件,例如web url或自定义url方案,则什么也不会发生。
例如,此代码无效,并且在执行期间不生成日志,即使我的应用程序处理URL中使用的方案:
[[NSDocumentController sharedDocumentController] noteNewRecentDocumentURL:[NSURL URLWithString:@"http://www.stackoverflow.com"]];
更新:
有人(很久以前)找到了一种方法来调整此菜单,使其显示文件是否存在:
http://lists.apple.com/archives/cocoa-dev/2007/Apr/msg00651.html
这并不奇怪,正如医生所说:
由于
NSC通常不
但医生没有说用什么代替,海报也没有给出更多细节。你知道吗?
如果可能的话,我宁愿避免这种情况,因为我可以免费得到所有的东西(比如当你有两个同名的项目时,它也会显示父目录来帮助区分它们)。