ColorEffect class
An effect that animates a Color between begin and end, composited with
the target using blendMode (via ColorFiltered). A color value of null
will be interpreted as a fully transparent version of the other color.
Defaults to begin=null, end=Color(0x800099FF).
blendMode defaults to BlendMode.color.
Note that most blend modes in Flutter (including color)
do not preserve the alpha channel correctly. See BlendMode.srcATop or
BlendMode.srcIn for options that do maintain alpha.
The following example animates from red to blue with a multiply blend:
Image.asset('assets/rainbow.jpg').animate()
.color(begin: Colors.red, end: Colors.blue, blendMode: BlendMode.multiply)
See also: TintEffect, which provides a simpler interface for single color tints.
Constructors
Properties
- begin → Color?
-
The begin value for the effect. If null, effects should use a reasonable
default value when appropriate.
finalinherited
- blendMode → BlendMode?
-
final
- curve → Curve?
-
The specified easing curve for the effect. If null, will inherit the curve from the
previous effect, or use Animate.defaultCurve if this is the first effect.
finalinherited
- delay → Duration?
-
The specified delay for the effect. If null, will inherit the delay from the
previous effect, or use Duration.zero if this is the first effect.
finalinherited
- duration → Duration?
-
The specified duration for the effect. If null, will inherit the duration from the
previous effect, or use Animate.defaultDuration if this is the first effect.
finalinherited
- end → Color?
-
The end value for the effect. If null, effects should use a reasonable
default value when appropriate.
finalinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
build(
BuildContext context, Widget child, AnimationController controller, EffectEntry entry) → Widget -
Builds the widgets that implement the effect on the target
child, based on the provided AnimationController and EffectEntry.override -
buildAnimation(
AnimationController controller, EffectEntry entry) → Animation< Color?> -
Returns an animation based on the controller, entry, and begin/end values.
inherited
-
getBeginRatio(
AnimationController controller, EffectEntry entry) → double -
Returns a ratio corresponding to the beginning of the specified entry.
inherited
-
getEndRatio(
AnimationController controller, EffectEntry entry) → double -
Returns a ratio corresponding to the end of the specified entry.
inherited
-
getOptimizedBuilder<
U> ({required ValueListenable< U> animation, Widget? child, required TransitionBuilder builder}) → AnimatedBuilder -
Returns an optimized AnimatedBuilder that doesn't
rebuild if the value hasn't changed.
inherited
-
getToggleBuilder(
{required ValueListenable< double> animation, required Widget child, required bool toggle(), required ToggleEffectBuilder builder}) → AnimatedBuilder -
Returns an AnimatedBuilder that rebuilds when the
boolean value returned by the
togglefunction changes.inherited -
isAnimationActive(
Animation animation) → bool -
Check if the animation is currently running / active.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Constants
- defaultBlendMode → const BlendMode
- defaultValue → const Color
- neutralValue → const Color?