本篇文章更新時間:2026/03/28
如有資訊過時或語誤之處,歡迎使用 Contact 功能通知或向一介資男的 LINE 社群反應。
如果本站內容對你有幫助,歡迎贊助支持 。
讓所有東西都「一致地變糟」:從 MacOS 26 的 UI 問題思考設計一致性
副標題:讀《Make MacOS 26 consistently bad (unironically)》有感
編輯前言:如果你也升上 MacOS 26,應該會感受到那個莫名其妙「圓角大爆走」的 UI 風格。這篇文章探討的不是圓角本身,而是更惱人的「視覺不一致」。作者提出了一個有趣的思路:既然沒辦法讓所有角變漂亮,那至少讓它們一致地變糟。
核心觀點 (Key Takeaways)
- MacOS 26 的 UI 最大問題不是圓角變醜,而是整個系統的圓角「不一致」。
- 為了修改圓角,一般作法會停用 SIP(System Integrity Protection),但作者認為風險與成本偏高。
- 作者提出反向思考:與其讓 UI 圓角變小,不如讓所有第三方 App 的圓角都變得更「一致地圓」。
深入解析
原文出自 Make MacOS 26 consistently bad (unironically),作者以極「工程師式」的方式處理 MacOS 26 的視覺問題。我覺得有趣之處不在技術本身,而是背後的邏輯:視覺一致性比好不好看更重要。
作者認為,讓設計變醜是選擇,但讓它醜得不一致,就是災難。
-
圓角問題的本質不是「醜」,是「亂」:作者提到他能接受圓角變圓,但 Safari 等系統 App 與第三方 App 之間圓角大小混亂不統一,反而最令人煩躁。
-
不用關掉 SIP,也能動態修改圓角:一般使用者會停用 SIP 來修改系統框架,但作者避開風險,直接用動態載入(DYLD inject)的方式覆寫
NSThemeFrame的圓角方法,使第三方 GUI App 的圓角全部變成固定值。
這段 Objective‑C 的 method swizzling 程式碼,就是核心技巧:
static CGFloat kDesiredCornerRadius = 23.0;
...
method_setImplementation(m1, (IMP)swizzled_cornerRadius);
簡單說,就是把所有 App 的視窗邊角強制改成 23px 圓角,達成「一致地糟」的 UI。
- 使用 LaunchAgent 自動注入:透過 plist 設定
DYLD_INSERT_LIBRARIES,系統開機後即可套用圓角覆寫,完全不動到 root 系統檔案。
筆者心得與啟發
讀完這篇,我最有感的有兩件事:
第一,一致性比美觀更重要。作者雖然自嘲讓 UI「一致地變糟」,但其實指向一個很常被忽略的設計原則:人的眼睛比起絕對美感,更能敏感地察覺「不一致」。當 Safari、Finder、第三方 App 都有不同的圓角邏輯時,視覺上就會很容易「卡住」。
第二,工程師對問題的解決方式真的截然不同。他不是抱怨 UI,也不是嘗試美化,而是「既然 MacOS 的圓角這麼圓,那我讓全部 App 都變得更圓就好了」。這種反向思考其實非常實用:當系統不給你完美解決方案,就找一個能讓整體更一致、心理負擔更小的 workaround。
如果你也對 MacOS 26 的 UI 感到不適,不妨把這篇文章當成一個觀察視角:設計問題不見得要靠美學解決,有時候,一致性就是最好的補救措施。
