算法艺术创作
algorithmic-art
通过代码和可调参数创作生成艺术与交互式视觉效果。
swiftui-liquid-glass【设计与创意】SwiftUI Liquid Glass: implement, adopt, refactor, review correctness/perf/design.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Attribution: copied from @Dimillian’s Dimillian/Skills (2025-12-31).
Use this skill to build or review SwiftUI features that fully align with the iOS 26+ Liquid Glass API. Prioritize native APIs (glassEffect, GlassEffectContainer, glass button styles) and Apple design guidance. Keep usage consistent, interactive where needed, and performance aware.
Choose the path that matches the request:
GlassEffectContainer where multiple glass elements appear.GlassEffectContainer when multiple glass elements coexist..glassEffect(...) after layout and visual modifiers..interactive() for elements that respond to touch/pointer.#available(iOS 26, *) and provide a non-glass fallback.#available(iOS 26, *) present with fallback UI.GlassEffectContainer.glassEffect applied after layout/appearance modifiers.interactive() only where user interaction exists.glassEffectID used with @Namespace for morphing.GlassEffectContainer and tune spacing..glassEffect(.regular.tint(...).interactive(), in: .rect(cornerRadius: ...)) as needed..buttonStyle(.glass) / .buttonStyle(.glassProminent) for actions.glassEffectID when hierarchy changes.Use these patterns directly and tailor shapes/tints/spacing.
if #available(iOS 26, *) {
Text("Hello")
.padding()
.glassEffect(.regular.interactive(), in: .rect(cornerRadius: 16))
} else {
Text("Hello")
.padding()
.background(.ultraThinMaterial, in: RoundedRectangle(cornerRadius: 16))
}
GlassEffectContainer(spacing: 24) {
HStack(spacing: 24) {
Image(systemName: "scribble.variable")
.frame(width: 72, height: 72)
.font(.system(size: 32))
.glassEffect()
Image(systemName: "eraser.fill")
.frame(width: 72, height: 72)
.font(.system(size: 32))
.glassEffect()
}
}
Button("Confirm") { }
.buttonStyle(.glassProminent)
references/liquid-glass.md