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
toggle
function 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?