You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

macOS Catalina浅色模式下NSStatusItem标题表情深色tint问题求助

macOS Catalina及更早版本浅色模式下NSStatusItem表情符号深色tint问题

在macOS Catalina及更低版本的浅色模式中,将表情符号用作NSStatusItem的标题时,表情会呈现深色tint效果;但在新版本系统的深色模式下,显示效果符合预期。

不同macOS版本下同一代码的对比图

此外,当NSMenu处于选中状态时,表情符号的显示效果也符合预期:
选中状态下的显示图

实现代码

初始化NSStatusItem

var sItem: NSStatusItem = NSStatusItem()

override func viewDidLoad() {
    sItem = NSStatusBar.system.statusItem(withLength: NSStatusItem.variableLength)
    self.sItem.button!.title = "🏞 " + outsideTemp + "°C    🏠" + roomTemp + "°C"
}

设置菜单

func setupMenu() {
    // 初始化菜单项
    let menu = NSMenu()
        
    menu.addItem(NSMenuItem(title: "在浏览器中打开", action: #selector(AppDelegate.openInBrowser(_:)), keyEquivalent: "o"))
        
    menu.addItem(notifyEnabler)
    menu.addItem(NSMenuItem.separator())
    menu.addItem(NSMenuItem(title: "退出 tempApplet", action: #selector(NSApplication.terminate(_:)), keyEquivalent: "q"))
        
    sItem.menu = menu
}

内容的提问来源于stack exchange,提问作者mlebd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 13:02:32