Use this file to discover all available pages before exploring further.
visualEffect applies geometry-driven transforms — opacity, offset, scale, blur, rotation — that update as a component’s position or size changes, ideal for parallax and scroll-driven UI. coordinateSpace registers a named frame of reference that visualEffect and GeometryReader can resolve positions against.Effects applied through visualEffect are purely visual and do not affect layout. Pair coordinateSpace on a ScrollView with visualEffect on its descendants to drive effects from scroll position.
A function that receives a VisualEffectBuilder and a GeometryProxy, and returns the builder with effects chained onto it. The proxy provides layout information (size, position, safe area insets) that can drive the effect values.
Show VisualEffectBuilder methods
blur(radius) — applies a Gaussian blur
opacity(amount) — sets opacity (0 to 1)
offset({ x, y }) — offsets the component
scale(value) or scale({ x, y }) — scales uniformly or per-axis
transform(matrix) — applies a full 2D affine transform
translation({ x, y }) — translates the component
rotation(degrees), rotation({ degrees }), or rotation({ radians }) — rotates the component
The callback is re-evaluated whenever the component’s geometry changes (e.g., during scrolling or resizing). Effects applied through the builder do not affect the component’s layout — they are purely visual transforms. Use coordinateSpace on a parent to create named coordinate spaces that can be referenced in proxy.frame().
A unique name for this coordinate space. Other components can reference this name in GeometryProxy.frame() to get their position relative to this component.