在OSX应用程序的xcode中,我可以使用以下代码在扩展坞中更改应用程序图标:
let image = NSImage.init(named: NSImage.Name(rawValue: "AltAppIcon"))
NSApp.applicationIconImage = image
但是当我关闭应用程序时,停靠图像会恢复为原始图标。有没有一种方法可以保存替代图标,使其即使在关闭应用程序后也始终显示?感谢您的帮助。
答案 0 :(得分:1)
您可以实现Dock tile插件。不幸的是,许多与此相关的文档都消失了。您通常可以在Code Loading Programming Topics中阅读有关可装入捆绑软件和插件的信息。
您将在应用程序项目中创建一个新的Bundle目标。 Dock tile插件的捆绑包扩展名必须是docktileplugin。您应该向该目标添加一个采用和实现NSDockTilePlugin
协议的类。将捆绑软件的Info.plist中的NSPrincipalClass
键设置为您的班级名称。
在主应用程序目标中,将要复制的捆绑软件目标的产品添加到应用程序捆绑软件的Contents / PlugIns目录中。另外,应用程序的Info.plist还需要一个键NSDockTilePlugIn
,其值是插件包的名称。
加载插件后,系统将调用其-setDockTile:
方法,并传入NSDockTile
的实例供其使用。您的代码可以使用该对象来操纵应用程序的Dock磁贴。