apply method

  1. @override
void apply(
  1. double progress
)
override

Apply the given progress level to the effect's target.

Here progress is a variable that is typically in the range from 0 to 1, with 0 being the initial state, and 1 the final state of the effect. See EffectController for details.

This is a main method that MUST be implemented in every derived class.

Implementation

@override
void apply(double progress) {
  final currentColor = color.withOpacity(
    // Currently there is a bug when opacity is 0 in the color filter.
    // "Expected a value of type 'SkDeletable', but got one of type 'Null'"
    // https://github.com/flutter/flutter/issues/89433
    max(_tween.transform(progress), 1 / 255),
  );
  target.tint(currentColor, paintId: paintId);
}