gpt4 book ai didi

macos - Mac OSX bundle 图标

转载 作者:行者123 更新时间:2023-12-03 23:55:59 26 4
gpt4 key购买 nike

我编译了一个名为 MyBundle.bundle 的 Mac OSX 包,它用作另一个应用程序的插件。我希望 bundle 有一个唯一的图标,因此我将 Info.plist 文件设置为:

<key>CFBundleIconFile</key>
<string>MyIcon.icns</string>

并将文件 MyIcon.icns 放在包的 MyBundle.bundle/Contents/Resources 文件夹中。

这不起作用,查找程序显示包的通用图标并忽略指定的 MyIcon.icns 文件。如果我将 bundle 的扩展名从 .bundle 更改为 .app 图标会立即显示 - 所以我知道 Info.plist 是正确的。

我找到了一个模拟用户在 bundle 上复制和粘贴图标的解决方法:

我将图标作为类型为“icns”和 ID -16455 的资源添加到包的 .rsrc 文件中。

我比打电话
/Developer/Tools/SetFile -a BC MyBundle.bundle

这有效,但真的很蹩脚。从 Mac OS 10.8 开始,SetFile 需要永远执行。

我的问题:是否可以强制 Finder 在没有此类黑客的情况下显示 bundle 的图标?

顺便说一句:有一个关于同一主题的问题: Set icon of non app mac os x bundle ;但是那里唯一的答案指示了如何创建图标,并且对解决问题没有帮助。

最佳答案

您可以使用 NSWorkspace
[[NSWorkspace sharedWorkspace] setIcon:(NSImage *)image forFile:(NSString *)fullPath options:(NSWorkspaceIconCreationOptions)options]
https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Classes/NSWorkspace_Class/Reference/Reference.html

关于macos - Mac OSX bundle 图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14362063/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com