关于 axiom-liquid-glass-ref
axiom-liquid-glass-ref 是面向 Apple 平台应用的 Liquid Glass 采用参考技能,涵盖界面审查、无障碍、导航、控件和分层应用图标。
主要功能
- 01Liquid Glass 采用与迁移指南
- 02系统组件更新审查
- 03无障碍设置检查
- 04使用 Icon Composer 设计分层图标
- 05导航、菜单与控件指南
适用场景
- 01采用 Liquid Glass 前审查应用
- 02查找影响系统材质的自定义背景
- 03检查无障碍设置下的可读性
- 04准备分层应用图标资源
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ charleswiltgen/ axiom --skill axiom-liquid-glass-ref安装后在 Claude Code 中输入/axiom-liquid-glass-ref确认已加载。
详细介绍
Liquid Glass 采用指南
何时使用此技能
适用于:
- 规划在整个应用中全面采用 Liquid Glass
- 审核现有界面是否兼容 Liquid Glass
- 使用 Icon Composer 更新应用图标
- 了解 Liquid Glass 在特定平台上的行为(iOS、iPadOS、macOS、tvOS、watchOS)
- 从以前使用的材质(模糊效果、自定义半透明效果)迁移
- 确保 Liquid Glass 界面符合无障碍要求
- 审查搜索、导航或组织类组件的更新
相关技能
- 使用
axiom-liquid-glass实现 Liquid Glass 材质本身,并处理设计评审压力场景 - 使用
axiom-swiftui-performance分析 Liquid Glass 渲染性能 - 使用
axiom-accessibility-diag进行无障碍测试
概述
采用 Liquid Glass 并不意味着要从头重做应用。首先,使用最新版本的 Xcode 构建应用,查看发生的变化。如果应用使用 SwiftUI、UIKit 或 AppKit 的标准组件,那么在最新平台版本上,界面会自动采用最新的外观与体验。
关键采用策略
- 使用最新的 Xcode SDK 构建
- 在最新平台版本上运行
- 参照本指南检查变化
- 逐步采用最佳实践
视觉焕新
自动发生的变化
标准组件采用 Liquid Glass
- 导航栏、标签栏、工具栏
- 工作表、弹出框、操作表
- 按钮、滑块、开关和控件
- 侧边栏、分栏视图、菜单
工作原理
- Liquid Glass 将玻璃的光学特性与流动感相结合
- 为控件和导航形成独立的功能层
- 根据重叠、焦点状态和环境进行调整
- 帮助用户聚焦于底层内容
善用系统框架
✅ 应该:使用标准组件
SwiftUI、UIKit 和 AppKit 中的标准组件只需极少的代码改动,就能自动采用 Liquid Glass。
// ✅ Standard components get Liquid Glass automatically
NavigationView {
List(items) { item in
Text(item.name)
}
.toolbar {
ToolbarItem {
Button("Add") { }
}
}
}
// Recompile with Xcode 26 → Liquid Glass applied
❌ 不应该:使用自定义背景覆盖
// ❌ Custom backgrounds interfere with Liquid Glass
NavigationView { }
.background(Color.blue.opacity(0.5)) // Breaks Liquid Glass effects
.toolbar {
ToolbarItem { }
.background(LinearGradient(...)) // Overlays system effects
}
审查内容
- 分栏视图
- 标签栏
- 工具栏
- 导航栏
- 任何具有自定义背景或外观的组件
解决方案 移除自定义效果,让系统决定背景外观。
使用无障碍设置进行测试
Liquid Glass 会进行相应调整:降低透明度(呈现更明显的磨砂效果)、增强对比度(采用黑白边框)、减少动态效果(不显示弹性动画)。请验证每种设置下的内容都清晰可读,并确保自定义元素提供备用体验。有关详细的无障碍测试工作流,请参阅 axiom-liquid-glass 专项技能。
app.launchArguments += ["-UIAccessibilityIsReduceTransparencyEnabled", "1",
"-UIAccessibilityButtonShapesEnabled", "1", "-UIAccessibilityIsReduceMotionEnabled", "1"]
避免过度使用 Liquid Glass
Liquid Glass 会让用户注意到底层内容。在多个自定义控件上过度使用,会分散用户对内容的注意力。仅对重要的功能性元素(导航、主要操作)应用 .glassEffect(),不要用于内容卡片、列表行或装饰元素。
// ✅ Content layer: no glass. Navigation layer: glass on functional buttons only.
ZStack {
ScrollView { ForEach(articles) { ArticleCard($0) } }
VStack {
Spacer()
HStack {
Button("Filter") { }.glassEffect()
Spacer()
Button("Sort") { }.glassEffect()
}.padding()
}
}
应用图标
应用图标采用了更具动感和表现力的设计。图标网格更新后,图标风格更加统一,在不同设备上的视觉效果也更加一致。应用图标包含多个图层,可根据光照和视觉效果动态响应。
平台支持
分层图标:iOS/iPadOS 26+、macOS Tahoe+、watchOS(圆形蒙版)。外观变体:默认(浅色)、深色、透明、有色调(主屏幕个性化)。
设计原则
设计简洁、精炼的图层,使用纯色填充和半透明叠加层。将效果(反射、折射、阴影、模糊、蒙版)交由系统处理。不要预先烘焙模糊效果、手动阴影、硬编码高光或固定蒙版。
使用图层进行设计
分为三个图层:前景(主要元素)、中间层(辅助元素)、背景(基础层)。将每个图层导出为 PNG 或 SVG,尺寸为 @1x/@2x/@3x,并保留透明度。
图标编辑器
Xcode 26+ 已内置(也可从 developer.apple.com/design/resources 单独下载)。拖放图层,添加可选背景,调整属性(不透明度、位置、缩放),预览系统效果和所有外观变体,并直接导出到资源目录。
对照新版网格预览
网格:iOS/iPadOS/macOS 使用圆角矩形蒙版;watchOS 使用圆形蒙版。从 developer.apple.com/design/resources 下载。让元素保持居中,避免被裁切;在所有尺寸下测试,并确认所有外观变体的效果都符合预期。
控件
各平台的控件焕然一新,并能在交互时呈现动态效果。旋钮会在交互时变为 Liquid Glass,按钮会流畅地变形成菜单或弹出框。控件的曲率会参考硬件形状(较圆的形状会贴合角落)。
外观更新
带边框的按钮默认采用胶囊形状(macOS 上的迷你、小型和中型按钮仍采用圆角矩形)。旋钮会在交互时变成玻璃效果;按钮会变形成菜单或弹出框。新增 controlSize(.extraLarge) 选项;macOS 上的控件高度略有增加。使用 controlSize(.small) 保持高密度布局的向后兼容性。标准控件会自动采用这些样式——移除硬编码的 .frame() 尺寸。
检查更新后的控件
检查滑块、开关、按钮、步进器、选择器、分段控件和进度指示器。确认外观与界面相符、间距自然、控件未被裁切,且交互反馈灵敏。
控件中的颜色
使用系统颜色(.tint(.blue)、.accentColor)——它们会自动适配浅色和深色环境。避免使用硬编码的 RGB 值(Color(red:green:blue:)),这些值可能无法适配。请在两种模式下测试,并确认符合 WCAG AA 对比度要求。
检查拥挤或重叠
Liquid Glass 元素需要留有足够空间。玻璃按钮使用默认的 HStack 间距(不要使用 spacing: 4)。元素过于拥挤或玻璃效果彼此叠加会造成视觉杂乱。多个玻璃元素必须紧邻时,请使用 GlassEffectContainer。
使用滚动边缘效果提升易读性
使用 .scrollEdgeEffectStyle(.hard, for: .top) 遮挡滚动到控件下方的内容。系统栏(工具栏、导航栏、标签栏)会自动采用此效果;自定义栏需要显式设置。
使控件形状与容器对齐
使用 containerRelativeShape() 使控件曲率与容器对齐,从控件到工作表、窗口再到显示屏,营造连续的同心视觉效果。
新按钮样式
使用内置样式代替自定义玻璃效果:.borderedProminent(主要样式,搭配 .tint())、.bordered(次要样式)、.plain + .glassEffect()(第三级/自定义样式)。每种样式都会自动适配 Liquid Glass。
导航
Liquid Glass 会应用于定义导航的最上层。标签栏和侧边栏等关键导航元素会悬浮在这个 Liquid Glass 层中,帮助用户专注于下方内容。
明确导航层级
保持两个不同的层:导航(标签栏、侧边栏、工具栏——Liquid Glass)悬浮在内容(文章、照片、数据——无玻璃效果)上方。不要对列表行等内容项应用 .glassEffect()——内容层上的玻璃效果会模糊层次边界,并与导航争夺注意力。
让标签栏适配侧边栏
使用 .tabViewStyle(.sidebarAdaptable)(iOS 26),让标签栏在 iPad/macOS 上适配为侧边栏,同时在 iPhone 上保持为标签栏。它会随着窗口尺寸自适应并流畅过渡。
TabView {
ContentView().tabItem { Label("Home", systemImage: "house") }
SearchView().tabItem { Label("Search", systemImage: "magnifyingglass") }
}
.tabViewStyle(.sidebarAdaptable)
用分栏视图构建侧边栏 + 检视器布局
使用 NavigationSplitView 创建侧边栏、内容和详情列。Liquid Glass 会自动应用于侧边栏和检视器。iOS 会自适应列的可见性;在大屏幕上,iPadOS/macOS 会显示所有列。
NavigationSplitView {
List(folders, selection: $selectedFolder) { Label($0.name, systemImage: $0.icon) }
.navigationTitle("Folders")
} content: {
List(items, selection: $selectedItem) { ItemRow($0) }
} detail: {
InspectorView(item: selectedItem)
}
检查内容安全区域
确认侧边栏/检查器下方的内容能恰当地露出。若内容需要考虑侧边栏/检查器占用的空间,请使用 .safeAreaInset(edge:)。
边到边玻璃效果的内边距
当玻璃效果通过 .ignoresSafeArea() 延伸至边缘时,请在内容层使用 .safeAreaPadding()(而非 .padding()),以适配设备安全区域(刘海、灵动岛、主屏幕指示条):
// ❌ .padding(.horizontal, 20) — doesn't account for safe areas
// ✅ .safeAreaPadding(.horizontal, 20) — 20pt beyond safe areas
适用于:带材质效果的全屏工作表、边到边工具栏、浮动面板、自定义玻璃导航栏。需要 iOS 17+。有关 .safeAreaPadding() 与 .padding() 的完整指南,请参阅 axiom-swiftui-layout-ref。
检查:侧边栏/检查器下方的内容可见、未被裁切、露出的部分看起来协调,并且与刘海/灵动岛/主屏幕指示条保持适当距离。
背景延伸效果
在不让内容实际滚动到侧边栏/检查器下方的情况下,对其下方的内容进行镜像和模糊处理,营造沉浸式的边到边效果。最适合主视觉图片、照片图库和富媒体分栏视图。
NavigationSplitView {
SidebarView()
} detail: {
DetailView()
.backgroundExtensionEffect()
}
自动最小化标签栏(iOS)
滚动时可通过 .tabBarMinimizeBehavior() 收起标签栏(iOS 26)。选项:.onScrollDown(阅读/媒体应用推荐)、.onScrollUp、.automatic、.never。向相反方向滚动时,标签栏会展开。
菜单和工具栏
菜单在各个平台上都焕然一新。它们采用 Liquid Glass,并为常见操作的菜单项添加图标,帮助用户快速浏览和识别操作。iPadOS 现在提供菜单栏,以便更快地访问常用命令。
跨平台菜单一致性
菜单现在在 iOS 和 macOS 上采用一致的布局——图标位于前缘,相同的 API(Label 或标准控件初始化器)在两个平台上会呈现相同的视觉效果。
标准操作的菜单图标
自动采用图标
// ✅ Standard selectors get icons automatically
Menu("Actions") {
Button(action: cut) {
Text("Cut")
}
Button(action: copy) {
Text("Copy")
}
Button(action: paste) {
Text("Paste")
}
}
// System uses selector to determine icon
// cut() → scissors icon
// copy() → documents icon
// paste() → clipboard icon
标准选择器
cut()→ ✂️ 剪刀copy()→ 📄 文档paste()→ 📋 剪贴板delete()→ 🗑️ 垃圾桶- 以及更多……
自定义操作
// ✅ Provide icon for custom actions
Button {
customAction()
} label: {
Label("Custom Action", systemImage: "star.fill")
}
让顶部菜单操作与滑动操作保持一致
保持一致且可预测
// ✅ Swipe actions match contextual menu
List(emails) { email in
EmailRow(email)
.swipeActions(edge: .leading) {
Button("Archive", systemImage: "archivebox") {
archive(email)
}
}
.swipeActions(edge: .trailing) {
Button("Delete", systemImage: "trash", role: .destructive) {
delete(email)
}
}
.contextMenu {
// ✅ Same actions appear at top
Button("Archive", systemImage: "archivebox") {
archive(email)
}
Button("Delete", systemImage: "trash", role: .destructive) {
delete(email)
}
Divider()
// Additional actions below
Button("Mark Unread") { }
}
}
原因: 用户期望滑动操作和菜单操作保持一致。一致性有助于建立信任,并让行为更可预测。
工具栏分组、间隔和形变
有关完整的工具栏 API 说明,请参阅 axiom-swiftui-26-ref:ToolbarSpacer、ToolbarItemGroup 视觉分组、.sharedBackgroundVisibility(.hidden)、工具栏形变、DefaultToolbarItem、用户可自定义的工具栏、单色图标渲染、向后兼容的工具栏标签,以及浮动玻璃按钮。
Liquid Glass 专属工具栏指南:
- 每个工具栏背景组只选一种样式(图标或文本)——混用会让玻璃下的视觉权重不一致
- 仅在表达含义(号召性操作、下一步)时使用
.tint(),不要用于装饰——单色样式可减少 Liquid Glass 下的视觉干扰
为图标提供无障碍标签
所有仅含图标的按钮都需要使用 .accessibilityLabel("Action Name"),以便 VoiceOver 和 Voice Control 用户使用。使用 Label("Share", systemImage: "square.and.arrow.up") 可自动提供无障碍支持。
检查工具栏自定义设置
确认自定义间隔、项目和可见性设置能与 Liquid Glass 背景配合使用。常见问题:在 ToolbarItem 内有条件地隐藏内容会产生空胶囊——将 if 移到外层,改为隐藏整个 ToolbarItem。
窗口和模态界面
窗口采用更圆润的边角,以适配控件和导航元素。iPadOS 应用会显示窗口控件,并支持连续调整窗口大小。工作表和操作表采用 Liquid Glass,并增大了圆角半径。
任意窗口大小(iPadOS)
iPadOS 26 窗口可连续调整大小(不再在预设尺寸之间切换)。请使用 .windowResizability(.contentSize) 和灵活布局。移除对硬编码尺寸的假设,并在各种窗口尺寸下进行测试。
流畅调整列宽的分栏视图
使用 NavigationSplitView(columnVisibility:),在连续调整窗口大小时自动重新排列内容,避免手动计算布局和编写自定义动画代码。
使用布局指南和安全区域
使用 .safeAreaInset(edge:),让内容自动避开窗口控件、标题栏和界面装饰。
工作表:增大圆角
工作表的圆角增大;半屏工作表会与边缘留出间距(露出下方内容),并在过渡到全屏高度时变得更加不透明。请检查内容是否被更圆的边角裁切,以及下方露出的背景是否符合预期。
移除 presentationBackground
从工作表中移除 .presentationBackground()——系统会自动为工作表应用 Liquid Glass 材质。自定义背景会干扰新材质。
检查工作表和弹出框的背景
移除弹出框和工作表中的自定义 VisualEffectView/UIBlurEffect 背景。系统会自动应用 Liquid Glass,无需背景修饰符。
操作菜单:内联外观
操作菜单现在从源元素(而非底部边缘)弹出,并允许与界面的其他部分交互。将 .confirmationDialog() 附加到触发按钮上——系统会自动定位菜单。
组织与布局
列表、表格和表单的行高及内边距更大,为内容留出充足空间。区段的圆角也增大,以匹配控件的弧度。
增大行高和内边距
列表、表格、表单和区段的高度、内边距、间距及圆角均有所增加。标准组件会自动采用这些调整。移除硬编码的 .frame(height:) 和 .padding(.vertical:),让系统决定行高和内边距。
区段标题大小写
iOS 26 不再将区段标题转换为全大写,而是按提供的内容原样呈现。请改用标题式大小写:Section(header: Text("User Settings")),而不是 "user settings"。
使用 Form 实现平台优化布局
使用 .formStyle(.grouped),自动采用与各平台控件相匹配的行高、内边距、间距和区段圆角。
搜索
针对搜索位置和行为的平台惯例旨在优化各设备上的体验。请检查搜索字段的设计惯例,以提供更吸引人的搜索体验。
激活搜索时的键盘布局
变更内容(iOS)
用户轻点搜索字段使其获得焦点时,搜索字段会随着键盘出现向上滑动。
测试
- 轻点搜索字段
- 确认其平滑向上滑动
- 键盘出现时不会遮挡搜索字段
- 与系统搜索体验(Spotlight、Safari)保持一致
无需更改代码
// ✅ Existing searchable modifier adopts new behavior
List(items) { item in
Text(item.name)
}
.searchable(text: $searchText)
语义化搜索标签页
关于 Tab API 模式(包括 .tabRole(.search)),请参阅 swiftui-nav-ref 技能的第 5 节(标签页导航集成)。
平台注意事项
Liquid Glass 在不同平台、场景和输入方式下可能呈现不同的外观和行为。请在不同设备上进行测试,以了解材质的外观。
watchOS 和 tvOS
| 平台 | 采用方式 | 关键要求 |
|---|---|---|
| watchOS | 在最新版本上自动采用,即使未使用最新 SDK | 使用标准工具栏 API,以及 watchOS 10 中的 .buttonStyle(.bordered) |
| tvOS | 基于焦点——控件获得焦点时显示玻璃效果(Apple TV 4K 第 2 代及更新机型) | 在标准控件上使用 .focusable();对于自定义控件,使用由 @FocusState 驱动的不透明度并应用 .glassEffect() |
glassBackgroundEffect()
对于需要反映其后方内容的自定义视图(而不仅仅是在上方应用玻璃材质),请使用 .glassBackgroundEffect()。它会创建玻璃质感的背景,使下层内容透显出来;这与将玻璃作为叠加材质应用的 .glassEffect() 不同。
// Custom floating panel with glass background reflecting content behind it
struct FloatingPanel: View {
var body: some View {
VStack {
Text("Panel Content")
// ...
}
.padding()
.glassBackgroundEffect() // Reflects content beneath, not on top
}
}
.glassEffect() 与 .glassBackgroundEffect():控件和导航元素(按钮、工具栏)使用 .glassEffect()。需要透显下层内容的内容容器(面板、需要体现纵深感的卡片)使用 .glassBackgroundEffect()。
ScrollView 与 Glass 交互
当 Liquid Glass 元素叠加在可滚动内容上时,请谨慎处理裁剪和可见性:
ZStack {
ScrollView {
LazyVStack {
ForEach(items) { item in
ItemRow(item)
}
}
.safeAreaInset(edge: .bottom, spacing: 0) {
Color.clear.frame(height: 80) // Space for floating glass controls
}
}
VStack {
Spacer()
HStack {
Button("Action") { }
.glassEffect()
}
.padding()
}
}
常见问题:Glass 元素可能会在滚动视图边界处被裁剪或失去效果。请对滚动内容(而不是 Glass 元素)使用 .clipped(),并确保 Glass 元素位于滚动视图层级之外,而非其中。
UIBlurEffect 迁移映射
| 旧版(iOS 26 之前) | Liquid Glass 等效项 |
|---|---|
UIBlurEffect(style: .systemMaterial) | .glassEffect()(标准) |
UIBlurEffect(style: .systemUltraThinMaterial) | .glassEffect(.clear)(需满足条件) |
UIBlurEffect(style: .systemChromeMaterial) | 系统工具栏/导航栏玻璃效果(自动应用) |
带模糊效果的 UIVisualEffectView | 完全移除——在 SwiftUI 视图上使用 .glassEffect() |
.background(.thinMaterial) | .glassEffect() 或保留材质(会自动适配) |
.background(.ultraThinMaterial) | 内容容器使用 .glassBackgroundEffect() |
自定义 NSVisualEffectView(macOS) | .glassEffect() 或系统组件 |
迁移步骤:(1) 移除 UIVisualEffectView/NSVisualEffectView 包装视图,(2) 在 SwiftUI 视图上替换为 .glassEffect(),(3) 启用“降低透明度”进行测试,以验证回退效果,(4) 对性能进行性能分析——玻璃效果使用 GPU 合成。
组合自定义 Liquid Glass 效果
将多个 .glassEffect() 视图包装在 GlassEffectContainer { } 中,以优化渲染、实现玻璃形状之间的流畅变形,并降低合成器开销。适用于相邻的玻璃元素、变形动画和对性能要求较高的界面。
性能测试
使用 Instruments(Time Profiler、SwiftUI、Allocations、Core Animation)对滚动、动画、内存和 CPU 进行性能分析。SwiftUI Instruments 工作流请参见 axiom-swiftui-performance,Instruments 决策树请参见 axiom-performance-profiling。
向后兼容性
在 Info.plist 中添加 UIDesignRequiresCompatibility = true,即可使用 iOS 26 SDK 发布,同时保持 iOS 18 外观(停用 Liquid Glass,使用之前的模糊/材质样式)。迁移策略:启用该键后发布,在单独的构建中审查更改,逐步更新,并在准备就绪时移除该键。
快速参考:API 检查清单
Liquid Glass 核心 API
-
glassEffect()- 应用 Liquid Glass 材质 -
glassEffect(.clear)- 透明变体(需满足 3 个条件) -
glassEffect(in: Shape)- 自定义形状 -
glassBackgroundEffect()- 用于反映内容的自定义视图
滚动边缘效果
-
scrollEdgeEffectStyle(_:for:)- 在 Glass 与滚动内容交界处保持可读性 - 固定的辅助视图使用
.hard样式 - 渐进淡出使用
.soft样式
控件和形状
-
containerRelativeShape()- 使控件形状与容器对齐 -
.borderedProminent按钮样式 -
.bordered按钮样式 - 使用
.tint()的系统颜色以实现自适应
导航
-
.tabViewStyle(.sidebarAdaptable)- 标签栏可适配侧边栏 -
.tabBarMinimizeBehavior(_:)- 滚动时最小化 -
.tabRole(.search)- 语义化搜索标签页 - 使用
NavigationSplitView构建侧边栏 + 检查器布局
工具栏和菜单
-
ToolbarSpacer(.fixed)- 分隔工具栏组 - 使用标准选择器自动显示菜单图标
- 让上下文菜单操作与轻扫操作保持一致
组织和布局
-
.formStyle(.grouped)- 针对平台优化的表单布局 - 分区标题采用标题式大小写
- 遵循自动行高和内边距
性能
-
GlassEffectContainer- 组合多个玻璃效果 - 使用 Instruments 进行性能分析
- 使用辅助功能设置进行测试
向后兼容性
- 在 Info.plist 中添加
UIDesignRequiresCompatibility(如有需要)
审核清单
审核应用是否采用 Liquid Glass 时,请使用此清单。按类别分组的 30 个高影响力项目:
构建和测试
- 使用 Xcode 26 SDK 构建,并在最新的平台版本上运行
- 使用“降低透明度”“提高对比度”和“减少动态效果”进行测试
- 使用 Instruments 对性能进行分析(滚动、动画、内存)
移除自定义覆盖
- 移除导航栏、工具栏和标签栏的自定义背景
- 移除工作表和弹出框中的
presentationBackground - 移除硬编码的控件高度和行高
- 移除工作表和弹出框中的自定义模糊/材质背景
图标和应用图标
- 应用图标使用前景/中间/背景图层,并在 Icon Composer 中合成
- 测试所有外观变体(浅色/深色/透明/着色)
- 为所有工具栏/菜单图标提供辅助功能标签
控件
- 检查新的胶囊按钮形状;高密度布局使用
controlSize(.small) - 使用系统颜色(而非硬编码的 RGB);采用
.borderedProminent/.bordered - 控件之间留有足够间距(避免玻璃效果彼此拥挤)
- 在玻璃效果与滚动内容交界处应用滚动边缘效果
导航和布局
- 层次清晰:导航层(玻璃效果)与内容层(无玻璃效果)
- 在适当情况下,让标签栏适配侧边栏(
.sidebarAdaptable) - 检查内容安全区域;边缘到边缘的玻璃效果使用
.safeAreaPadding() - 考虑为分栏视图应用背景延伸效果
- 将分区标题更新为标题式大小写
- 在表单中采用
.formStyle(.grouped)
菜单和工具栏
- 使用标准选择器自动显示菜单图标
- 让轻扫操作与上下文菜单操作保持一致
- 按逻辑对工具栏项目分组(参见
axiom-swiftui-26-ref)
窗口和模态界面
- 支持任意窗口尺寸(iPadOS);使用灵活布局
- 检查工作表内容在圆角增大后的显示情况
平台
- watchOS:采用标准工具栏 API 和按钮样式
- tvOS:采用标准焦点 API,以便 Liquid Glass 在获得焦点时生效
- 在多个玻璃效果相近的情况下使用
GlassEffectContainer - 如有需要,考虑使用
UIDesignRequiresCompatibility键
资源
WWDC:2025-219、2025-323(使用新设计构建 SwiftUI 应用)
文档:/TechnologyOverviews/liquid-glass、/TechnologyOverviews/adopting-liquid-glass、/design/Human-Interface-Guidelines/materials
示例代码:/SwiftUI/Landmarks-Building-an-app-with-Liquid-Glass
技能:axiom-liquid-glass、axiom-swiftui-performance、axiom-swiftui-debugging、axiom-accessibility-diag
最后更新:2025-12-01 最低平台版本:iOS/iPadOS 26、macOS Tahoe、tvOS、watchOS、visionOS 3 Xcode 版本:Xcode 26+ 技能类型:参考(全面的采用指南)