我搜索一個解決方案,在Mac上用可可在文件圖標疊加(圖標徽章)(像Dropbox在Mac上執行)。 有沒有人知道一種方法來做到這一點? 我搜索了Xcode文檔以及我查看scpplugins源代碼,這是一種舊的碳代碼。在mac osx上找到文件圖標徽章(圖標疊加)> = 10.6
感謝所有幫助
我搜索一個解決方案,在Mac上用可可在文件圖標疊加(圖標徽章)(像Dropbox在Mac上執行)。 有沒有人知道一種方法來做到這一點? 我搜索了Xcode文檔以及我查看scpplugins源代碼,這是一種舊的碳代碼。在mac osx上找到文件圖標徽章(圖標疊加)> = 10.6
感謝所有幫助
由於搜索在雪豹返工,舊的碳方法將不再起作用。我在Finder中採用的路徑可以用來標記圖標,這涉及到編寫一個自定義包,然後需要將其注入Finder。
查看Wolf Rentzsch的mach_inject(https://github.com/rentzsch/mach_star/tree/master/mach_inject),以便能夠向Cocoa應用程序注入自定義包。
使用class-dump可以查看Cocoa應用程序的頭文件(例如Snow Leopard和Lion中的Finder),以瞭解您需要在自己的包中重寫的內容。
NSDockTile
使這很簡單:
NSDockTile *dockTile = [NSApp dockTile];
[dockTile setBadgeLabel:@"33"];
我是要求查找器文件圖標。當然,碼頭圖標的東西非常簡單。我不夠精確,但我編輯了我的問題。不管怎麼說,還是要謝謝你。 –
感謝您的澄清。誰能投票-1請評論爲什麼? – sbooth
一點點遲到,但也許會幫助別人。
我解決了NSWorkspace類同樣的問題(見的setIcon:forFile:選擇)
基本思想:
1)嘗試獲取文件的預覽與QLThumbnailImageCreate(如果不爲NULL你將獲得的小樣圖標)
2)如果你沒有得到縮略圖,然後得到默認OS X的圖標文件(NSWorkspace iconForFile)
3)Combine縮略圖(或默認圖標)與你的徽章
4)設置新的圖標文件(NSWorkspace 的setIcon:forFile:選擇)
我知道這是一個老問題。
最近有一個庫實現了這個功能:https://github.com/liferay/liferay-nativity。
您可以使用以下兩種方法在文件夾/文件上疊加圖標。
您可以使用-setIcon:forFile:選擇:上NSWorkspace方法,如果你想改變在Mac OS X 文件或文件夾的圖標,你使用這種方法,覆蓋退出應用圖標疊加後然而即使您將該文件/文件夾移到了外面。這可能不是確切的解決方案。
取而代之,應用程序內部使用Finder Sync擴展目標(文件 - 新建 - 目標 - Finder同步擴展)。 創建擴展後,您的應用程序不會與此目標直接通信。爲了激活,使用AppleScript的命令(我不認爲有這個一個更好的選擇。)
要激活
的NSString * pluginPath = [[[一個NSBundle mainBundle] builtInPlugInsPath] stringByAppendingPathComponent:@ 「yourextension.appex」]; NSString * pluginkitString = [NSString stringWithFormat:@「pluginkit -e use -a \」%@ \「」,pluginPath];}};}}; system([pluginkitString cStringUsingEncoding:NSUTF8StringEncoding]);
一旦目標被激活,我們的應用程序就可以通過幾種方式與該擴展進行通信。其中很少是:
使用NSDistributedNotificationCenter。該類提供了一種將通知發送給其他任務中的對象的方法(如此處的擴展)。
其他方式是使用[[NSUserDefaults alloc] initWithSuiteName:@「teamid.com.company.test」];
您的應用程序和目標應該有共同的組標識符(即「teamid.com.company.test」)。 爲了在Target - Capabilities - App Groups下啓用「App Groups」,並給出如上所述的標識符(即「teamid.com.company.test」),那麼teamid就是您將從您的Apple開發人員門戶獲得的標識。爲您的擴展目標也做同樣的步驟。
在結束之前,請確保分機已啓動或未啓動。要檢查系統偏好 - 擴展 - 您的應用程序查找器。 這是用戶可以爲應用程序啓用/禁用圖標疊加的全局指向。
你可以在這個鏈接找到你要找的東西:http://stackoverflow.com/questions/3181145/add-an-icon-mac-pc-to-a-file-with-cocoa –