<!--
{
  "availability" : [
    "iOS: 17.0.0 -",
    "iPadOS: 17.0.0 -",
    "macCatalyst: 17.0.0 -",
    "macOS: 14.0.0 -",
    "tvOS: 17.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 10.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "SwiftUI",
  "identifier" : "/documentation/SwiftUI/TransitionPhase",
  "metadataVersion" : "0.1.0",
  "role" : "Enumeration",
  "symbol" : {
    "kind" : "Enumeration",
    "modules" : [
      "SwiftUI"
    ],
    "preciseIdentifier" : "s:7SwiftUI15TransitionPhaseO"
  },
  "title" : "TransitionPhase"
}
-->

# TransitionPhase

An indication of which the current stage of a transition.

```
@frozen enum TransitionPhase
```

## Overview

When a view is appearing with a transition, the transition will first be
shown with the `willAppear` phase, then will be immediately moved to the
`identity` phase. When a view is being removed, its transition is changed
from the `identity` phase to the `didDisappear` phase. If a view is removed
while it is still transitioning in, then its phase will change to
`didDisappear`. If a view is re-added while it is transitioning out, its
phase will change back to `identity`.

In the `identity` phase, transitions should generally not make any visual
change to the view they are applied to, since the transition’s view
modifications in the `identity` phase will be applied to the view as long as
it is visible. In the `willAppear` and `didDisappear` phases, transitions
should apply a change that will be animated to create the transition. If no
animatable change is applied, then the transition will be a no-op.

- See Also: `Transition`
- See Also: `AnyTransition`

## Topics

### Getting the phase

[`case identity`](/documentation/SwiftUI/TransitionPhase/identity)

The transition is being applied to a view that is in the view hierarchy.

[`case willAppear`](/documentation/SwiftUI/TransitionPhase/willAppear)

The transition is being applied to a view that is about to be inserted
into the view hierarchy.

[`case didDisappear`](/documentation/SwiftUI/TransitionPhase/didDisappear)

The transition is being applied to a view that has been requested to be
removed from the view hierarchy.

### Getting phase characteristics

[`var isIdentity: Bool`](/documentation/SwiftUI/TransitionPhase/isIdentity)

A Boolean that indicates whether the transition should have an identity
effect, i.e. not change the appearance of its view.

[`var value: Double`](/documentation/SwiftUI/TransitionPhase/value)

A value that can be used to multiply effects that are applied
differently depending on the phase.

## Relationships

### Conforms To

[`Copyable`](/documentation/Swift/Copyable)

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

[`Sendable`](/documentation/Swift/Sendable)

[`Hashable`](/documentation/Swift/Hashable)

[`Equatable`](/documentation/Swift/Equatable)

[`BitwiseCopyable`](/documentation/Swift/BitwiseCopyable)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)