---
title: BounceSymbolEffect
framework: symbols
role: symbol
role_heading: Structure
path: symbols/bouncesymboleffect
---

# BounceSymbolEffect

A type that applies a transitory scaling effect, or bounce, to the layers in a symbol-based image separately or as a whole.

## Declaration

```swift
struct BounceSymbolEffect
```

## Overview

Overview A bounce animation draws attention to a symbol by applying a brief scaling operation to the symbol’s layers. You can choose to scale the symbol up or down as it bounces. important: Because SwiftUI is a state-driven framework, you pass a value parameter when adding discrete effects, like bounce. You trigger the animation by changing the value parameter. Because AppKit and UIKit are event-driven frameworks, discrete effects animate automatically when added to an image view. // Add an effect in SwiftUI. @State private var value1 = 0 @State private var value2 = 0 var body: some View {     HStack {         Image(systemName: "arrow.up.circle")             // Bounce with a scale-up animation.             .symbolEffect(.bounce.up, value: value1)             .onTapGesture {                 value1 += 1             }         Image(systemName: "arrow.down.circle")             // Bounce three times with a scale-down animation.             .symbolEffect(.bounce.down, options: .repeat(3), value: value2)             .onTapGesture {                 value2 += 1             }     } } // Add an effect in AppKit and UIKit. // Bounce with a scale-up animation. imageView1.addSymbolEffect(.bounce.up)      // Bounce three times with a scale-down animation. imageView2.addSymbolEffect(.bounce.down, options: .repeat(3))

## Topics

### Accessing symbol effects

- [down](symbols/bouncesymboleffect/down.md)
- [up](symbols/bouncesymboleffect/up.md)

### Determining effect scope

- [byLayer](symbols/bouncesymboleffect/bylayer.md)
- [wholeSymbol](symbols/bouncesymboleffect/wholesymbol.md)

### Accessing the configuration

- [configuration](symbols/bouncesymboleffect/configuration.md)

## Relationships

### Conforms To

- [Copyable](swift/copyable.md)
- [DiscreteSymbolEffect](symbols/discretesymboleffect.md)
- [Equatable](swift/equatable.md)
- [Escapable](swift/escapable.md)
- [Hashable](swift/hashable.md)
- [IndefiniteSymbolEffect](symbols/indefinitesymboleffect.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
- [SymbolEffect](symbols/symboleffect.md)

## See Also

### Symbol effect types

- [AppearSymbolEffect](symbols/appearsymboleffect.md)
- [AutomaticSymbolEffect](symbols/automaticsymboleffect.md)
- [DisappearSymbolEffect](symbols/disappearsymboleffect.md)
- [PulseSymbolEffect](symbols/pulsesymboleffect.md)
- [ReplaceSymbolEffect](symbols/replacesymboleffect.md)
- [ScaleSymbolEffect](symbols/scalesymboleffect.md)
- [VariableColorSymbolEffect](symbols/variablecolorsymboleffect.md)
- [BreatheSymbolEffect](symbols/breathesymboleffect.md)
- [RotateSymbolEffect](symbols/rotatesymboleffect.md)
- [WiggleSymbolEffect](symbols/wigglesymboleffect.md)
