用途:帮助 macOS SwiftUI 应用接入现代 macOS 设计体系,以尽量少的自定义外观实现 Liquid Glass 效果,并审查现有界面中与系统材质冲突的填充、遮罩和裁剪。
主要能力:优先使用系统提供的玻璃与自适应材质,而非自绘模糊或不透明背景;按结构模式(NavigationSplitView、TabView、sheet、详情/检查器、工具栏、浮动控件)梳理界面;移除系统 sheet、侧边栏、工具栏后方多余的自定义背景或变暗层;先更新标准 SwiftUI 结构与控件,再为应用特有界面添加自定义 glassEffect 表面;校验玻璃分组、过渡、图标处理与前景激活在指针和键盘下的一致性。
使用方式:工具栏项默认渲染在浮动玻璃表面并自动分组,可用 ToolbarSpacer 的 fixed/flexible 间距表达分组,用 sharedBackgroundVisibility 让某项独立,用 badge 添加状态指示;搜索用 searchable 挂到正确的容器层级,次要搜索可用 searchToolbarBehavior;控件优先用标准 SwiftUI 控件,用 buttonBorderShape、controlSize 控制形状与密度,主操作使用系统 glass 与 glass-prominent 按钮样式;自定义玻璃用 glassEffect,交互元素加 .interactive(),相邻自定义玻璃元素包在同一个 GlassEffectContainer 中,形变过渡用 glassEffectID 配合局部 @Namespace。若改动影响 SwiftPM GUI 应用的启动行为,使用 build-run-debug 以前台 .app bundle 运行。
适用场景:采用系统玻璃、移除冲突的自定义外观、构建玻璃表面,以及审查工具栏分组、搜索位置、图标着色语义、玻璃容器共享与形变过渡。
限制与护栏:不要用标准 API 已提供现代行为时重建系统侧边栏、工具栏、sheet 或控件;不要因旧版本需要而在系统组件后加不透明背景;不要把相关玻璃元素分散到多个 GlassEffectContainer;不要仅为视觉多样而给所有图标或玻璃表面着色;不要把 iPhone 的标签/搜索行为套用到 macOS;审查时不要让 GUI SwiftPM 应用以裸可执行文件启动。应用图标需提供默认、深色、清晰、着色外观,并在减少透明度、减少动态效果等设置下验证自定义玻璃、颜色与动画。其他技能分工:场景架构用 swiftui-patterns,视图重构用 view-refactor,AppKit 互操作用 appkit-interop,构建运行调试用 build-run-debug。