# androidx.transition

*** ** * ** ***

AndroidX Transition Library provides Transition API back to API level 14.

Transition API allows you to animate various kinds of layout changes automatically. For example, you can present a change of `https://developer.android.com/reference/android/view/View.html#setVisibility(int)` as fade in / out animation like below:

```
    TextView message = findViewById(R.id.message);
    ViewGroup container = findViewById(R.id.container);
    Fade fade = new Fade();

    TransitionManager.beginDelayedTransition(container, fade);
    message.setVisibility(View.INVISIBLE);
```

| See also |
|---|---|
| `https://developer.android.com/training/transitions` | [Transition API Guide](https://developer.android.com/training/transitions) |

## Interfaces

|---|---|
| `https://developer.android.com/reference/androidx/transition/Transition.TransitionListener` | A transition listener receives notifications from a transition. |
| `https://developer.android.com/reference/androidx/transition/TransitionSeekController` | Returned from `https://developer.android.com/reference/androidx/transition/TransitionManager#controlDelayedTransition(android.view.ViewGroup,androidx.transition.Transition)` to allow manually controlling the animations within a Transition using `https://developer.android.com/reference/androidx/transition/TransitionSeekController#setCurrentPlayTimeMillis(long)`. |

## Classes

|---|---|
| `https://developer.android.com/reference/androidx/transition/ArcMotion` | A PathMotion that generates a curved path along an arc on an imaginary circle containing the two points. |
| `https://developer.android.com/reference/androidx/transition/AutoTransition` | Utility class for creating a default transition that automatically fades, moves, and resizes views during a scene change. |
| `https://developer.android.com/reference/androidx/transition/ChangeBounds` | This transition captures the layout bounds of target views before and after the scene change and animates those changes during the transition. |
| `https://developer.android.com/reference/androidx/transition/ChangeClipBounds` | ChangeClipBounds captures the `https://developer.android.com/reference/android/view/View.html#getClipBounds()` before and after the scene change and animates those changes during the transition. |
| `https://developer.android.com/reference/androidx/transition/ChangeImageTransform` | This Transition captures an ImageView's matrix before and after the scene change and animates it during the transition. |
| `https://developer.android.com/reference/androidx/transition/ChangeScroll` | This transition captures the scroll properties of targets before and after the scene change and animates any changes. |
| `https://developer.android.com/reference/androidx/transition/ChangeTransform` | This Transition captures scale and rotation for Views before and after the scene change and animates those changes during the transition. |
| `https://developer.android.com/reference/androidx/transition/CircularPropagation` | A propagation that varies with the distance to the epicenter of the Transition or center of the scene if no epicenter exists. |
| `https://developer.android.com/reference/androidx/transition/Explode` | This transition tracks changes to the visibility of target views in the start and end scenes and moves views in or out from the edges of the scene. |
| `https://developer.android.com/reference/androidx/transition/Fade` | This transition tracks changes to the visibility of target views in the start and end scenes and fades views in or out when they become visible or non-visible. |
| `https://developer.android.com/reference/androidx/transition/PathMotion` | This base class can be extended to provide motion along a Path to Transitions. |
| `https://developer.android.com/reference/androidx/transition/PatternPathMotion` | A PathMotion that takes a Path pattern and applies it to the separation between two points. |
| `https://developer.android.com/reference/androidx/transition/Scene` | A scene represents the collection of values that various properties in the View hierarchy will have when the scene is applied. |
| `https://developer.android.com/reference/androidx/transition/SidePropagation` | A `TransitionPropagation` that propagates based on the distance to the side and, orthogonally, the distance to epicenter. |
| `https://developer.android.com/reference/androidx/transition/Slide` | This transition tracks changes to the visibility of target views in the start and end scenes and moves views in or out from one of the edges of the scene. |
| `https://developer.android.com/reference/androidx/transition/Transition` | A Transition holds information about animations that will be run on its targets during a scene change. |
| `https://developer.android.com/reference/androidx/transition/Transition.EpicenterCallback` | Class to get the epicenter of Transition. |
| `https://developer.android.com/reference/androidx/transition/TransitionInflater` | This class inflates scenes and transitions from resource files. |
| `https://developer.android.com/reference/androidx/transition/TransitionKt` |   |
| `https://developer.android.com/reference/androidx/transition/TransitionListenerAdapter` | This adapter class provides empty implementations of the methods from `https://developer.android.com/reference/androidx/transition/Transition.TransitionListener`. |
| `https://developer.android.com/reference/androidx/transition/TransitionManager` | This class manages the set of transitions that fire when there is a change of `https://developer.android.com/reference/androidx/transition/Scene`. |
| `https://developer.android.com/reference/androidx/transition/TransitionPropagation` | Extend `TransitionPropagation` to customize start delays for Animators created in `https://developer.android.com/reference/androidx/transition/Transition#createAnimator(android.view.ViewGroup,androidx.transition.TransitionValues,androidx.transition.TransitionValues)`. |
| `https://developer.android.com/reference/androidx/transition/TransitionSet` | A TransitionSet is a parent of child transitions (including other TransitionSets). |
| `https://developer.android.com/reference/androidx/transition/TransitionValues` | Data structure which holds cached values for the transition. |
| `https://developer.android.com/reference/androidx/transition/Visibility` | This transition tracks changes to the visibility of target views in the start and end scenes. |
| `https://developer.android.com/reference/androidx/transition/VisibilityPropagation` | Base class for `TransitionPropagation`s that care about View Visibility and the center position of the View. |