affaan-m/ECC

liquid-glass-design

iOS 26 液态玻璃设计系统 — 适用于 SwiftUI、UIKit 和 WidgetKit 的动态玻璃材质,具有模糊、反射和交互式变形效果。

59Collecting
See how to use itView GitHub source
npx skills add https://github.com/affaan-m/ECC --skill "docs/zh-CN/skills/liquid-glass-design"
Automated source guide

Source checked Jul 28, 2026·Refresh due Oct 26, 2026

Reorganized from the pinned upstream SKILL.md

Turn liquid-glass-design's source instructions into a guide you can follow

According to the pinned SKILL.md from affaan-m/ECC: 实现苹果 Liquid Glass 的模式指南——这是一种动态材质,会模糊其后的内容,反射周围内容的颜色和光线,并对触摸和指针交互做出反应。涵盖 SwiftUI、UIKit 和 WidgetKit 集成。

npx skills add https://github.com/affaan-m/ECC --skill "docs/zh-CN/skills/liquid-glass-design"
Check the pinned source

Best fit

  • iOS 26 液态玻璃设计系统 — 适用于 SwiftUI、UIKit 和 WidgetKit 的动态玻璃材质,具有模糊、反射和交互式变形效果。

Bring this context

  • A concrete task that matches the documented purpose of liquid-glass-design.
  • The files, examples, or context the task depends on.
  • Your constraints, target environment, and definition of done.

Expected outputs

  • A result that follows the pinned liquid-glass-design instructions.
  • A concise record of assumptions, inputs used, and unresolved questions.
  • A final check against the source workflow and relevant permission signals.

Key source sections

Read liquid-glass-design through these 5 source sections

Sections are extracted automatically from the pinned SKILL.md and link back to the source.

01

何时启用

为 iOS 26+ 构建或更新采用新设计语言的应用程序时 实现玻璃风格的按钮、卡片、工具栏或容器时 在玻璃元素之间创建变形过渡时 将 Liquid Glass 效果应用于小组件时 将现有的模糊/材质效果迁移到新的 Liquid Glass API 时

SKILL.md · 何时启用
为 iOS 26+ 构建或更新采用新设计语言的应用程序时实现玻璃风格的按钮、卡片、工具栏或容器时在玻璃元素之间创建变形过渡时
02

核心模式 — SwiftUI

为任何视图添加 Liquid Glass 的最简单方法:

SKILL.md · 核心模式 — SwiftUI
.regular — 标准玻璃效果.tint(Color) — 添加颜色色调以增强突出度.interactive() — 对触摸和指针交互做出反应
03

基本玻璃效果

为任何视图添加 Liquid Glass 的最简单方法:

SKILL.md · 基本玻璃效果
为任何视图添加 Liquid Glass 的最简单方法:
04

自定义形状和色调

.regular — 标准玻璃效果 .tint(Color) — 添加颜色色调以增强突出度 .interactive() — 对触摸和指针交互做出反应 形状:.capsule(默认)、.rect(cornerRadius:)、.circle

SKILL.md · 自定义形状和色调
.regular — 标准玻璃效果.tint(Color) — 添加颜色色调以增强突出度.interactive() — 对触摸和指针交互做出反应
05

玻璃按钮样式

Review the “玻璃按钮样式” section in the pinned source before continuing.

SKILL.md · 玻璃按钮样式
Review and apply the “玻璃按钮样式” source section.

SkillSignal prompt templates

Provide the task, context, and acceptance criteria

These prompts were written by SkillSignal from the source structure; they are not upstream text.

Task-start prompt

Confirm source fit, inputs, and outputs before acting.

Use liquid-glass-design to help me with: [specific task]. Context: [files, data, or background]. Constraints: [environment, scope, and prohibited actions]. Before acting, check the pinned SKILL.md and explain which sections apply, what inputs are still missing, and what you will deliver.

Source-guided execution

Make the Agent explicitly follow the key extracted sections.

Apply the pinned liquid-glass-design source to [task]. Pay particular attention to these source sections: “何时启用”, “核心模式 — SwiftUI”, “基本玻璃效果”, “自定义形状和色调”, “玻璃按钮样式”. Preserve the important decision at each step. Mark facts not covered by the source as “needs confirmation” instead of inventing them. Then verify the result against my acceptance criteria: [criteria].

Result-review prompt

Check omissions, permissions, and source drift before delivery.

Review the current liquid-glass-design result: (1) does it satisfy the original task; (2) were any applicable steps or limits in the pinned SKILL.md missed; (3) did it perform any unauthorized file, command, network, or data action; and (4) which conclusions remain unverified? List issues first, then fix only what the source or user authorization supports.

Output checklist

Verify each item before delivery

The task matches the purpose documented in the SKILL.md.

The source section “何时启用” has been checked.

The source section “核心模式 — SwiftUI” has been checked.

The source section “基本玻璃效果” has been checked.

The source section “自定义形状和色调” has been checked.

Inputs, constraints, and acceptance criteria are explicit.

Unverified facts, compatibility, and outcome claims are clearly marked.

Any file, command, network, or data action has been reviewed.

Choose a different workflow

When another Skill is the better fit

FAQ

What does liquid-glass-design do?

实现苹果 Liquid Glass 的模式指南——这是一种动态材质,会模糊其后的内容,反射周围内容的颜色和光线,并对触摸和指针交互做出反应。涵盖 SwiftUI、UIKit 和 WidgetKit 集成。

How do I start using liquid-glass-design?

The catalog detected this source-specific install command: npx skills add https://github.com/affaan-m/ECC --skill "docs/zh-CN/skills/liquid-glass-design". Inspect the command and pinned source before running it.

Which Agent platforms does it declare?

No dedicated Agent platform is declared in the pinned source record.

Repository stars
234,327
Repository forks
35,711
Quality
59/100
Source repository last pushed

Quality breakdown

Based on traceable docs and repository signals; stars are not treated as quality.

59/100
Documentation22/30
Specificity7/25
Maintenance18/20
Trust signals12/25

Compare before choosing

Related Agent Skills and source variants

These links are selected from shared tasks, functions, stacks, platforms, and same-name variants. Compare the source owner, documentation, permissions, and maintenance signals.

liquid-glass-design by affaan-m

iOS 26 Liquid Glass design system — dynamic glass material with blur, reflection, and interactive morphing for SwiftUI, UIKit, and WidgetKit.

liquid-glass-design by affaan-m

日本語翻訳:このファイルは liquid-glass-design 用の日本語翻訳が必要です

higgsfield-product-photoshoot by MoizIbnYousaf

Use when the user wants professional brand-quality product images via Higgsfield's mode-specific prompt enhancement pipeline. Entry point for any product visual with a specific format or platform target. Use whenever: "product photoshoot", "lifestyle product shots", "Pinterest pin", "hero banner", "ad pack", "virtual try-on", "studio shot", "carousel images", "Meta ads creative", "model wearing product", "levitating product", "splash shot", "CGI style product", "restyle product image", Shopify i

content-management-systems by github

Workflow for building and modifying content management systems across WordPress, Shopify, Wix, Squarespace, Drupal, WooCommerce, Joomla, HubSpot CMS Hub, Webflow, Adobe Experience Manager, and similar platforms. Use when working on CMS themes, plugins, apps, modules, admin panels, media uploads, content models, editors, markdown pipelines, or static export workflows.

shopify-expert by jeffallan

Builds and debugs Shopify themes (.liquid files, theme.json, sections), develops custom Shopify apps (shopify.app.toml, OAuth, webhooks), and implements Storefront API integrations for headless storefronts. Use when building or customizing Shopify themes, creating Hydrogen or custom React storefronts, developing Shopify apps, implementing checkout UI extensions or Shopify Functions, optimizing performance, or integrating third-party services. Invoke for Liquid templating, Storefront API, app dev

View original Skill.mdThis page is parsed directly from the repository SKILL.md without editorial rewriting. Collected: Jul 28, 2026 · about 1 min

Liquid Glass 设计系统 (iOS 26)

实现苹果 Liquid Glass 的模式指南——这是一种动态材质,会模糊其后的内容,反射周围内容的颜色和光线,并对触摸和指针交互做出反应。涵盖 SwiftUI、UIKit 和 WidgetKit 集成。

何时启用

  • 为 iOS 26+ 构建或更新采用新设计语言的应用程序时
  • 实现玻璃风格的按钮、卡片、工具栏或容器时
  • 在玻璃元素之间创建变形过渡时
  • 将 Liquid Glass 效果应用于小组件时
  • 将现有的模糊/材质效果迁移到新的 Liquid Glass API 时

核心模式 — SwiftUI

基本玻璃效果

为任何视图添加 Liquid Glass 的最简单方法:

Text("Hello, World!")
    .font(.title)
    .padding()
    .glassEffect()  // Default: regular variant, capsule shape

自定义形状和色调

Text("Hello, World!")
    .font(.title)
    .padding()
    .glassEffect(.regular.tint(.orange).interactive(), in: .rect(cornerRadius: 16.0))

关键自定义选项:

  • .regular — 标准玻璃效果
  • .tint(Color) — 添加颜色色调以增强突出度
  • .interactive() — 对触摸和指针交互做出反应
  • 形状:.capsule(默认)、.rect(cornerRadius:).circle

玻璃按钮样式

Button("Click Me") { /* action */ }
    .buttonStyle(.glass)

Button("Important") { /* action */ }
    .buttonStyle(.glassProminent)

用于多个元素的 GlassEffectContainer

出于性能和变形考虑,始终将多个玻璃视图包装在一个容器中:

GlassEffectContainer(spacing: 40.0) {
    HStack(spacing: 40.0) {
        Image(systemName: "scribble.variable")
            .frame(width: 80.0, height: 80.0)
            .font(.system(size: 36))
            .glassEffect()

        Image(systemName: "eraser.fill")
            .frame(width: 80.0, height: 80.0)
            .font(.system(size: 36))
            .glassEffect()
    }
}

spacing 参数控制合并距离——距离更近的元素会将其玻璃形状融合在一起。

统一玻璃效果

使用 glassEffectUnion 将多个视图组合成单个玻璃形状:

@Namespace private var namespace

GlassEffectContainer(spacing: 20.0) {
    HStack(spacing: 20.0) {
        ForEach(symbolSet.indices, id: \.self) { item in
            Image(systemName: symbolSet[item])
                .frame(width: 80.0, height: 80.0)
                .glassEffect()
                .glassEffectUnion(id: item < 2 ? "group1" : "group2", namespace: namespace)
        }
    }
}

变形过渡

在玻璃元素出现/消失时创建平滑的变形效果:

@State private var isExpanded = false
@Namespace private var namespace

GlassEffectContainer(spacing: 40.0) {
    HStack(spacing: 40.0) {
        Image(systemName: "scribble.variable")
            .frame(width: 80.0, height: 80.0)
            .glassEffect()
            .glassEffectID("pencil", in: namespace)

        if isExpanded {
            Image(systemName: "eraser.fill")
                .frame(width: 80.0, height: 80.0)
                .glassEffect()
                .glassEffectID("eraser", in: namespace)
        }
    }
}

Button("Toggle") {
    withAnimation { isExpanded.toggle() }
}
.buttonStyle(.glass)

将水平滚动延伸到侧边栏下方

要允许水平滚动内容延伸到侧边栏或检查器下方,请确保 ScrollView 内容到达容器的 leading/trailing 边缘。当布局延伸到边缘时,系统会自动处理侧边栏下方的滚动行为——无需额外的修饰符。

核心模式 — UIKit

基本 UIGlassEffect

let glassEffect = UIGlassEffect()
glassEffect.tintColor = UIColor.systemBlue.withAlphaComponent(0.3)
glassEffect.isInteractive = true

let visualEffectView = UIVisualEffectView(effect: glassEffect)
visualEffectView.translatesAutoresizingMaskIntoConstraints = false
visualEffectView.layer.cornerRadius = 20
visualEffectView.clipsToBounds = true

view.addSubview(visualEffectView)
NSLayoutConstraint.activate([
    visualEffectView.centerXAnchor.constraint(equalTo: view.centerXAnchor),
    visualEffectView.centerYAnchor.constraint(equalTo: view.centerYAnchor),
    visualEffectView.widthAnchor.constraint(equalToConstant: 200),
    visualEffectView.heightAnchor.constraint(equalToConstant: 120)
])

// Add content to contentView
let label = UILabel()
label.text = "Liquid Glass"
label.translatesAutoresizingMaskIntoConstraints = false
visualEffectView.contentView.addSubview(label)
NSLayoutConstraint.activate([
    label.centerXAnchor.constraint(equalTo: visualEffectView.contentView.centerXAnchor),
    label.centerYAnchor.constraint(equalTo: visualEffectView.contentView.centerYAnchor)
])

用于多个元素的 UIGlassContainerEffect

let containerEffect = UIGlassContainerEffect()
containerEffect.spacing = 40.0

let containerView = UIVisualEffectView(effect: containerEffect)

let firstGlass = UIVisualEffectView(effect: UIGlassEffect())
let secondGlass = UIVisualEffectView(effect: UIGlassEffect())

containerView.contentView.addSubview(firstGlass)
containerView.contentView.addSubview(secondGlass)

滚动边缘效果

scrollView.topEdgeEffect.style = .automatic
scrollView.bottomEdgeEffect.style = .hard
scrollView.leftEdgeEffect.isHidden = true

工具栏玻璃集成

let favoriteButton = UIBarButtonItem(image: UIImage(systemName: "heart"), style: .plain, target: self, action: #selector(favoriteAction))
favoriteButton.hidesSharedBackground = true  // Opt out of shared glass background

核心模式 — WidgetKit

渲染模式检测

struct MyWidgetView: View {
    @Environment(\.widgetRenderingMode) var renderingMode

    var body: some View {
        if renderingMode == .accented {
            // Tinted mode: white-tinted, themed glass background
        } else {
            // Full color mode: standard appearance
        }
    }
}

用于视觉层次结构的强调色组

HStack {
    VStack(alignment: .leading) {
        Text("Title")
            .widgetAccentable()  // Accent group
        Text("Subtitle")
            // Primary group (default)
    }
    Image(systemName: "star.fill")
        .widgetAccentable()  // Accent group
}

强调模式下的图像渲染

Image("myImage")
    .widgetAccentedRenderingMode(.monochrome)

容器背景

VStack { /* content */ }
    .containerBackground(for: .widget) {
        Color.blue.opacity(0.2)
    }

关键设计决策

决策理由
使用 GlassEffectContainer 包装性能优化,实现玻璃元素之间的变形
spacing 参数控制合并距离——微调元素需要多近才能融合
@Namespace + glassEffectID在视图层次结构变化时实现平滑的变形过渡
interactive() 修饰符明确选择加入触摸/指针反应——并非所有玻璃都应响应
UIKit 中的 UIGlassContainerEffect与 SwiftUI 保持一致的容器模式
小组件中的强调色渲染模式当用户选择带色调的主屏幕时,系统会应用带色调的玻璃效果

最佳实践

  • 始终使用 GlassEffectContainer 来为多个兄弟视图应用玻璃效果——它支持变形并提高渲染性能
  • 在其他外观修饰符(frame、font、padding)之后应用 .glassEffect()
  • 仅在响应用户交互的元素(按钮、可切换项目)上使用 .interactive()
  • 仔细选择容器中的间距,以控制玻璃效果何时合并
  • 在更改视图层次结构时使用 withAnimation,以启用平滑的变形过渡
  • 在各种外观模式下测试——浅色模式、深色模式和强调色/色调模式
  • 确保可访问性对比度——玻璃上的文本必须保持可读性

应避免的反模式

  • 使用多个独立的 .glassEffect() 视图而不使用 GlassEffectContainer
  • 嵌套过多玻璃效果——会降低性能和视觉清晰度
  • 对每个视图都应用玻璃效果——保留给交互元素、工具栏和卡片
  • 在 UIKit 中使用圆角时忘记 clipsToBounds = true
  • 忽略小组件中的强调色渲染模式——破坏带色调的主屏幕外观
  • 在玻璃效果后面使用不透明背景——破坏了半透明效果

使用场景

  • 采用 iOS 26 新设计的导航栏、工具栏和标签栏
  • 浮动操作按钮和卡片式容器
  • 需要视觉深度和触摸反馈的交互控件
  • 应与系统 Liquid Glass 外观集成的小组件
  • 相关 UI 状态之间的变形过渡
Source repo
affaan-m/ECC
Skill path
docs/zh-CN/skills/liquid-glass-design/SKILL.md
Commit SHA
4e973d3eaf92
Repository license
MIT
Data collected