3步搞定macOS菜单栏拥挤:Ice安装、图标隐藏与拖拽排序实操
【免费下载链接】IcePowerful menu bar manager for macOS项目地址: https://gitcode.com/GitHub_Trending/ice/Ice
打开十几个应用后,你的Mac右侧菜单栏大概已经挤成了一串"小图标天书":状态栏应用、Git客户端、监控工具的图标你根本记不清谁是谁,刘海屏上更是互相遮挡。Ice 是一款开源的 macOS 菜单栏管理工具,核心思路很直接——把图标按"可见/隐藏/始终隐藏"三个区域划分,用拖拽和触发规则决定哪些图标露出来,哪些收起来。
最小路径:3步看到图标被隐藏
安装。需要 macOS 14 及以上版本。用 Homebrew 一条命令:
brew install --cask jordanbaird-ice也可以从仓库的 Release 页下载
Ice.zip,解压后把应用拖入Applications文件夹。启动。第一次运行后,Ice 会在菜单栏出现一个冰立方图标,所有状态栏图标会先被归入可见区域。
拖一个图标进去试试。按住某个不常用的状态栏图标,拖到 Ice 图标所在的隐藏区,松手后它立刻从菜单栏消失,只留一个隐藏区的分隔标记。鼠标滚轮在菜单栏滚动,或者点击菜单栏空白处,隐藏的图标会滑出来;用完后它们自动收回。
到这里核心价值已经成立:菜单栏上只剩你天天点的几个图标,其余都在"抽屉"里。Ice 默认开启"点击空白处显示"(showOnClick)和"滚动显示"(showOnScroll),默认关闭"悬停显示"(showOnHover),这些开关的逻辑都在 GeneralSettingsManager.swift 里,想看默认值可以直接翻这份源码。
任务一:把不常用图标收进隐藏区
日常整理就是反复做两件事:拖入、拖出。
- 拖入隐藏区:按住状态栏图标直接拖到 Ice 图标位置即可。
- 拖回可见区:触发显示后,反向拖回右侧即可。
- 始终隐藏区:对个别"几乎永远不用"的图标,可以进一步拖进 always-hidden 区,它不会出现在触发显示的内容里,只能手动调出。
三个区域的定义见 MenuBarSection.swift,其中visible、hidden、alwaysHidden枚举对应界面上的三块区域。
一个高频疑问:有图标"不见了"怎么办?按住Option键点击 Ice 图标会强制展开始终隐藏区,然后用Command拖动把它挪回别的区域。仓库的 FREQUENT_ISSUES.md 专门写了这一条。
任务二:重新排列图标顺序
macOS 本身不允许自由调整状态栏图标顺序,Ice 补上了这块:按住图标拖到想要的位置,松手后系统会记住这个顺序(部分应用不记录位置,重启后可能被 macOS 打回最左侧,这是已知限制)。
如果你还想让图标之间更"透气",在设置面板里有间距偏移项(itemSpacingOffset),可以整体拉大或收紧图标间距,效果在 MenuBarItemSpacingManager.swift 中实现。图标多到懒得找的时候,用快捷键呼出搜索面板,直接输入名称定位目标图标。
任务三:刘海屏把隐藏图标放到下方独立栏
普通模式下,隐藏图标是"盖"在菜单栏上的;而开启Ice Bar后,它们会被放进菜单栏下方的一条独立栏里显示。这对刘海屏 MacBook 更友好——下方区域不占用顶部空间,也不和系统时间、电池图标抢位置。位置选项默认是dynamic(跟随当前活动屏幕),在 IceBarLocation.swift 中可以看到全部可选值。
进阶调优:自动重隐藏策略
默认情况下触发显示的图标会自动收回,收回时机由 rehide 策略决定,共三档,定义在 RehideStrategy.swift:
- Smart(默认):按智能算法判断何时收回;
- Timed:固定间隔后收回,默认 15 秒,可在设置中调整;
- Focused app:切换前台应用后立即收回。
如果你经常在触发显示的同时处理多个图标,选 Timed 并把间隔拉长,避免图标抢在你点之前消失。另外,Hotkeys 面板可以为"切换某个区域显示/隐藏""打开搜索面板""启用 Ice Bar"等动作分别录入快捷键,方便在键盘上完成全部操作,实现见 HotkeySettingsManager.swift。
FAQ
Ice 会删除或损坏图标吗?不会。它只调整图标的显示区域和顺序,图标本身仍由各自的应用管理,随时可以拖回来。
为什么只支持 macOS 14 及以上?Ice 依赖 macOS 14 起开放的状态栏管理相关 API,官方明确不支持更早版本。
提示 "Ice cannot arrange menu bar items in automatically hidden menu bars" 怎么办?到 系统设置 → 控制中心,把"自动隐藏和显示菜单栏"临时改为"从不",更新一次 Ice 的图标列表,再改回你原来的设置。
重启后顺序会丢吗?大多数应用会记住位置,少数应用不记录,重启后会被 macOS 放回最左侧(即隐藏区最左端),重新拖一次即可,这是官方已知的待解决项。
写在最后
Ice 做的事情不多,但把"隐藏、排序、触发显示、独立栏"这几件事做到了开箱即用的程度,GPL-3.0 协议下代码完全开源。菜单栏拥挤的问题,本质上是用"区域 + 触发"换"一眼可见",Ice 把这套机制包装成了拖拽就能完成的操作。想继续了解各功能的实现细节,直接从仓库根目录的README.md入手,功能清单里已实现和计划中的条目都列得清清楚楚。
【免费下载链接】IcePowerful menu bar manager for macOS项目地址: https://gitcode.com/GitHub_Trending/ice/Ice
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考