---
title: ImmersionStyle
framework: swiftui
role: symbol
role_heading: Protocol
path: swiftui/immersionstyle
---

# ImmersionStyle

The styles that an immersive space can have.

## Declaration

```swift
protocol ImmersionStyle
```

## Overview

Overview Configure the appearance and behavior of an ImmersiveSpace by adding the immersionStyle(selection:in:) scene modifier to the space and specifying a style that conforms to this protocol, like mixed or full. For example, the following app defines a solar system scene that uses full immersion: @main struct SolarSystemApp: App {     @State private var style: ImmersionStyle = .full

var body: some Scene {         ImmersiveSpace {             SolarSystem()         }         .immersionStyle(selection: $style, in: .full)     } }

## Topics

### Getting built-in styles

- [automatic](swiftui/immersionstyle/automatic.md)
- [full](swiftui/immersionstyle/full.md)
- [mixed](swiftui/immersionstyle/mixed.md)
- [progressive](swiftui/immersionstyle/progressive.md)

### Supporting types

- [AutomaticImmersionStyle](swiftui/automaticimmersionstyle.md)
- [FullImmersionStyle](swiftui/fullimmersionstyle.md)
- [MixedImmersionStyle](swiftui/mixedimmersionstyle.md)
- [ProgressiveImmersionStyle](swiftui/progressiveimmersionstyle.md)

### Type Methods

- [progressive(_:initialAmount:)](swiftui/immersionstyle/progressive(_:initialamount:).md)
- [progressive(_:initialAmount:aspectRatio:)](swiftui/immersionstyle/progressive(_:initialamount:aspectratio:).md)
- [progressive(aspectRatio:)](swiftui/immersionstyle/progressive(aspectratio:).md)

## Relationships

### Conforming Types

- [AutomaticImmersionStyle](swiftui/automaticimmersionstyle.md)
- [FullImmersionStyle](swiftui/fullimmersionstyle.md)
- [MixedImmersionStyle](swiftui/mixedimmersionstyle.md)
- [ProgressiveImmersionStyle](swiftui/progressiveimmersionstyle.md)

## See Also

### Creating an immersive space

- [ImmersiveSpace](swiftui/immersivespace.md)
- [ImmersiveSpaceContentBuilder](swiftui/immersivespacecontentbuilder.md)
- [immersionStyle(selection:in:)](swiftui/scene/immersionstyle(selection:in:).md)
- [immersiveSpaceDisplacement](swiftui/environmentvalues/immersivespacedisplacement.md)
- [ImmersiveEnvironmentBehavior](swiftui/immersiveenvironmentbehavior.md)
- [ProgressiveImmersionAspectRatio](swiftui/progressiveimmersionaspectratio.md)
