如何在Finder中获取Mac系统图标?

问题描述:

我想将我的大纲视图中的图像设置为系统图标,就像Finder中的左侧一样。我想获得应用程序,文档,桌面等图标。我该如何做?如何在Finder中获取Mac系统图标?

有一个在NSWorkspace的方法,使您可以设置自定义图标文件夹和文件:

- (BOOL)setIcon:(NSImage *)image forFile:(NSString *)fullPath 
    options:(NSWorkspaceIconCreationOptions)options 

设置的文件或目录的图标指定的路径。

使用NSWorkspace的iconForFile:方法

NSImage *icon = [[NSWorkspace sharedWorkspace] iconForFile:@"/Applications/"]; 

编辑:

看一看这些文件,它们是你以后在做什么?你的问题是有点难以理解

$ ls /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/Toolbar*FolderIcon.icns 
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarAppsFolderIcon.icns 
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarDesktopFolderIcon.icns 
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarDocumentsFolderIcon.icns 
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarDownloadsFolderIcon.icns 
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarLibraryFolderIcon.icns 
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarMovieFolderIcon.icns 
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarMusicFolderIcon.icns 
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarPicturesFolderIcon.icns 
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarPublicFolderIcon.icns 
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarSitesFolderIcon.icns 
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarUtilitiesFolderIcon.icns 

这篇关于Creating icns Icon Files的文章应该涵盖你想要做的事情。还有一篇关于creating an icon so that it looks similar to the standard folder icon的文章,有助于保持一致性。希望有所帮助。

当然,这不是真正的编程相关。

使用-[NSWorkspace iconForFileType:],并从IconsCore.h传递常量(当然通过NSFileTypeForHFSTypeCode过滤)。

+0

使用let image = NSWorkspace.shared()获得所有的OutlineView图标(forFile:it.url.path) – Dis3buted 2016-09-30 11:01:18