在mac osx上查找文件图标徽章(图标叠加)> = 10.6

Jon*_*lli 4 macos cocoa finder nsdocktile

我搜索一个解决方案,用mac上的cocoa做文件图标叠加(图标标记)(就像Dropbox在Mac上做的那样).有谁知道这样做的方法?我已经搜索了Xcode文档,我查看scpplugins源代码,这是一种旧的碳代码.

谢谢你的帮助

mih*_*ham 5

一点点迟到,但也许会帮助别人.

我用类NSWorkspace解决了同样的问题(参见setIcon:forFile:options)

基本理念:

1.)尝试使用QLThumbnailImageCreate预览文件(如果不是NULL,您将获得缩略图图标)

2.)如果您没有获得缩略图,则获取文件的默认OS X图标(NSWorkspace iconForFile)

3)结合你的徽章缩略图(或默认图标)

4.)为文件设置新图标(NSWorkspace setIcon:forFile:options)


小智 4

由于 Finder 在 Snow Leopard 中被重新设计,旧的 Carbon 方法将不再起作用。我为了能够在 Finder 中标记图标而采取的方法包括编写一个自定义包,然后需要将其注入到 Finder 中。

查看 Wolf Rentzsch 的 mach_inject (https://github.com/rentzsch/mach_star/tree/master/mach_inject),以便能够将自定义包注入到 Cocoa 应用程序中。

使用 class-dump 能够查看 Cocoa 应用程序的头文件(例如 Snow Leopard 和 Lion 中的 Finder),以了解您需要在自己的包中覆盖哪些内容。