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-only, inherited
isCompleted bool
Whether this animation is stopped at the end.
read-only, inherited
isDismissed bool
Whether this animation is stopped at the beginning.
read-only, inherited
isListening bool
Whether there are any listeners.
read-only, inherited
next Animation<T>
The second sub-animation.
final
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
status AnimationStatus
Gets the status of this animation based on the first and next status. [...]
read-only, override
value → T
The current value of the animation.
read-only, inherited

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
didRegisterListener() → void
Calls didStartListening every time a registration of a listener causes an empty list of listeners to become non-empty. [...]
inherited
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. [...]
inherited
drive<U>(Animatable<U> child) Animation<U>
Chains a Tween (or CurveTween) to this Animation. [...]
@optionalTypeArgs, inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
notifyListeners() → void
Calls all the listeners. [...]
inherited
notifyStatusListeners(AnimationStatus status) → void
Calls all the status listeners. [...]
inherited
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
Returns 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