CompoundAnimation<T> class Null safety

An interface for combining multiple Animations. Subclasses need only implement the value getter to control how the child animations are combined. Can be chained to combine more than 2 animations.

For example, to create an animation that is the sum of two others, subclass this class and define T get value = first.value + second.value;

By default, the status of a CompoundAnimation is the status of the next animation if next is moving, and the status of the first animation otherwise.

Inheritance
Mixed in types
Implementers

Constructors

CompoundAnimation({required Animation<T> first, required Animation<T> next})
Creates a CompoundAnimation. Both arguments must be non-null. Either can be a CompoundAnimation itself to combine multiple animations.

Properties

first Animation<T>
The first sub-animation. Its status takes precedence if neither are animating.
final
hashCode int
The hash code for this object.
read-onlyinherited
isCompleted bool
Whether this animation is stopped at the end.
read-onlyinherited
isDismissed bool
Whether this animation is stopped at the beginning.
read-onlyinherited
isListening bool
Whether there are any listeners.
read-onlyinherited
next Animation<T>
The second sub-animation.
final
runtimeType Type
A representation of the runtime type of the object.
read-onlyinherited
status AnimationStatus
Gets the status of this animation based on the first and next status.
read-onlyoverride
value → T
The current value of the animation.
read-onlyinherited

Methods

addListener(VoidCallback listener) → void
Calls the listener every time the value of the animation changes.
inherited
addStatusListener(AnimationStatusListener listener) → void
Calls listener every time the status of the animation changes.
inherited
clearListeners() → void
Removes all listeners added with addListener.
protected">@protectedinherited
clearStatusListeners() → void
Removes all listeners added with addStatusListener.
protected">@protectedinherited
didRegisterListener() → void
Calls didStartListening every time a registration of a listener causes an empty list of listeners to become non-empty.
protected">@protectedinherited
didStartListening() → void
Called when the number of listeners changes from zero to one.
override
didStopListening() → void
Called when the number of listeners changes from one to zero.
override
didUnregisterListener() → void
Calls didStopListening when an only remaining listener is unregistered, thus making the list empty.
protected">@protectedinherited
drive<U>(Animatable<U> child) Animation<U>
Chains a Tween (or CurveTween) to this Animation.
optionalTypeArgs">@optionalTypeArgsinherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
inherited
notifyListeners() → void
Calls all the listeners.
protected">@protectedinherited
notifyStatusListeners(AnimationStatus status) → void
Calls all the status listeners.
protected">@protectedinherited
removeListener(VoidCallback listener) → void
Stop calling the listener every time the value of the animation changes.
inherited
removeStatusListener(AnimationStatusListener listener) → void
Stops calling the listener every time the status of the animation changes.
inherited
toString() String
A string representation of this object.
override
toStringDetails() String
Provides a string describing the status of this object, but not including information about the object itself.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited