如何在OS X 10.5和10.6上获取通用文件夹图标的NSImage

Qui*_*lor 11 directory cocoa icons objective-c nsimage

我正在编写一个Cocoa应用程序,它在NSOutlineView中显示存档文件的内容.我在大纲列中为NSBrowserCell提供了一个自定义图标,它工作得很好,但我遇到了一个小麻烦 - 使用[NSImage imageNamed:@"NSFolder"]10.6返回正确的图像(通用文件夹图标),但在10.5它返回nil,所以所有的文件夹图标消失.(我找不到有关NSFolder图标名称的任何文档,看看它什么时候被引入 - 我通过反复试验得到它.)

是否有一种不推荐使用的方法来获取适用于10.5和10.6的通用文件夹图标?

Wev*_*vah 18

[[NSWorkspace sharedWorkspace] iconForFileType:NSFileTypeForHFSTypeCode(kGenericFolderIcon)]

(我认为)

  • (FWIW,NSImageNameFolder(我假设是@"NSFolder")在10.6中被引入.) (3认同)
  • 谢谢!我学到新的东西有关可可至少每周一次......我也不会想到在NSImage.h看起来像`NSImageNameFolder`常数,从来不知道`kGenericFolderIcon`,这是IconsCore定义了很多常量之一.h,LaunchServices.framework的一部分.知道这一点真是太好了. (3认同)