gpt4 book ai didi

swift - 从 ViewController 设置菜单栏图标

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

如何从另一个 ViewController 更改 MacOS 应用程序的菜单栏图标?

  • AppDelegate.swift(初始化菜单栏图标)
  • ViewController.swift(尝​​试设置菜单栏图标 ❌)

我找到了这个,但这并没有改变我的菜单栏图标: Mac: How to save alternate app icon in dock OSX xcode

let image = NSImage.init(named: NSImage.Name(rawValue: "AltAppIcon"))
NSApp.applicationIconImage = image

看到 BOINC 图标的菜单栏右下角有自定义暂停符号/徽章了吗?这个应用程序的图标改变了。他们是否改写了该文件的名称并将其更改为“暂停图标”图像?

BOINC menubar icon paused


更新*

设置菜单栏图标的 AppDelegate.swift 函数有效:

AppDelegate.swift

func setIcon() {
let onIcon = NSImage(named: "fv-mini-icon-green")
statusItem.button?.image = onIcon
}

ViewController.swift

func taskOnIcon() {
DispatchQueue.main.async(execute: {
let appDele = NSApplication.shared.delegate as! AppDelegate
appDele.setIcon()
})
}

最佳答案

这里有一个方法...

class AppDelegate: NSObject, NSApplicationDelegate {
var statusBarItem: NSStatusItem!

func applicationDidFinishLaunching(_ aNotification: Notification) {

let statusBar = NSStatusBar.system
statusBarItem = statusBar.statusItem(withLength: 16)

let button = statusBarItem.button
button?.image = NSImage(named: "fv-mini-icon-green")

// .. other code here



关于swift - 从 ViewController 设置菜单栏图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61896055/

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