public interface MotionScheme
A motion scheme provides all the FiniteAnimationSpecs for a MaterialTheme.
Motion schemes are designed to create a harmonious motion for components in the app.
There are two built-in schemes, a standard and an expressive, that can be used as-is or customized.
Functions
defaultSpatialSpec
public fun <T> defaultSpatialSpec(): FiniteAnimationSpec<T>
A default spatial motion FiniteAnimationSpec.
This motion spec is designed to be applied to animations that can overshoot their targets
- such as shape or bounds animations. For color, alpha or other animations which have strict limits use the
effectsequivalent.
T is the generic data type that will be animated by the system, as long as the appropriate TwoWayConverter for converting the data to and from an AnimationVector is supplied.
fastSpatialSpec
public fun <T> fastSpatialSpec(): FiniteAnimationSpec<T>
A fast spatial motion FiniteAnimationSpec.
This motion spec is designed to be applied to animations that can overshoot their targets
- such as shape or bounds animations. For color, alpha or other animations which have strict limits use the
effectsequivalent.
T is the generic data type that will be animated by the system, as long as the appropriate TwoWayConverter for converting the data to and from an AnimationVector is supplied.
slowSpatialSpec
public fun <T> slowSpatialSpec(): FiniteAnimationSpec<T>
A slow spatial motion FiniteAnimationSpec.
This motion spec is designed to be applied to animations that can overshoot their targets
- such as shape or bounds animations. For color, alpha or other animations which have strict limits use the
effectsequivalent.
T is the generic data type that will be animated by the system, as long as the appropriate TwoWayConverter for converting the data to and from an AnimationVector is supplied.
defaultEffectsSpec
public fun <T> defaultEffectsSpec(): FiniteAnimationSpec<T>
A default effects motion FiniteAnimationSpec.
This motion spec is designed to be applied to animations that have strict limits and which shouldn't overshoot their targets - such as color or alpha animations. For shape, bounds or other animations which don't have strict limits use the 'spatial` equivalent.
T is the generic data type that will be animated by the system, as long as the appropriate TwoWayConverter for converting the data to and from an AnimationVector is supplied.
fastEffectsSpec
public fun <T> fastEffectsSpec(): FiniteAnimationSpec<T>
A fast effects motion FiniteAnimationSpec.
This motion spec is designed to be applied to animations that have strict limits and which shouldn't overshoot their targets - such as color or alpha animations. For shape, bounds or other animations which don't have strict limits use the 'spatial` equivalent.
T is the generic data type that will be animated by the system, as long as the appropriate TwoWayConverter for converting the data to and from an AnimationVector is supplied.
slowEffectsSpec
public fun <T> slowEffectsSpec(): FiniteAnimationSpec<T>
A slow effects motion FiniteAnimationSpec.
This motion spec is designed to be applied to animations that have strict limits and which shouldn't overshoot their targets - such as color or alpha animations. For shape, bounds or other animations which don't have strict limits use the 'spatial` equivalent.
T is the generic data type that will be animated by the system, as long as the appropriate TwoWayConverter for converting the data to and from an AnimationVector is supplied.