如何配置锁定屏幕时Touch Bar Control Strip的显示项目,保持播放音量键位置不变?
解决锁屏状态下Touch Bar Control Strip与解锁状态布局一致的方法
我之前也被这个问题困扰过——明明已经把解锁状态的Touch Bar Control Strip调得顺手了,一锁屏就变样,媒体键和音量键位置全乱了。折腾了一阵后终于找到了解决方案,分享给你:
1. 先搞定解锁状态的Control Strip布局
首先确保你已经把解锁状态的布局调整到满意的样子:
- 打开「系统偏好设置」→「键盘」→「自定义Touch Bar」
- 把上一曲/播放暂停/下一曲和静音/音量减小/音量增大拖到Control Strip的对应位置,调整好顺序后退出自定义界面。
2. 导出当前解锁状态的配置
打开「终端」,输入下面的命令,把解锁状态的Control Strip配置导出到桌面的临时文件里:
defaults read com.apple.controlstrip > ~/Desktop/controlstrip_config.plist
3. 复制解锁布局到锁屏状态配置
用文本编辑器(比如系统自带的「文本编辑」,或者VS Code)打开桌面上的controlstrip_config.plist文件:
- 找到两个关键的字典项:
"com.apple.controlstrip.MainState"对应解锁状态,"com.apple.controlstrip.LockedState"对应锁屏状态 - 把
MainState里的"WidgetIdentifiers"数组内容,完全复制替换到LockedState里的"WidgetIdentifiers"数组中
替换后的结构大概是这样(注意顺序要和你解锁状态的布局完全匹配):
<key>com.apple.controlstrip.LockedState</key> <dict> <key>WidgetIdentifiers</key> <array> <string>com.apple.system.mute</string> <string>com.apple.system.volume-down</string> <string>com.apple.system.volume-up</string> <string>com.apple.system.previous-track</string> <string>com.apple.system.play-pause</string> <string>com.apple.system.next-track</string> <!-- 其他你添加的控件标识符 --> </array> <!-- 其他原有内容保留不变 --> </dict>
4. 导入配置并重启Control Strip
保存修改后的文件,回到终端输入命令导入配置:
defaults write com.apple.controlstrip "$(cat ~/Desktop/controlstrip_config.plist)"
然后重启Control Strip进程让配置生效:
killall ControlStrip
等待几秒,Control Strip会自动重启,此时锁屏状态下的按键布局就和解锁时完全一致了!
小提醒
如果之后你在系统偏好设置里修改了解锁状态的Control Strip,需要重复上面的步骤,把新配置同步到锁屏状态哦。这个方法适用于macOS Catalina及以上版本,亲测有效~
内容的提问来源于stack exchange,提问作者cpcallen
相关产品推荐
相关产品推荐

