Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

flutter dart error dart(argument_type_not_assignable)

The following call to the drive function of the AnimationController leads to the error message:

The argument type 'ColorTween' can't be assigned to the parameter type 'Animatable'

Animation<Color> animation = animationController.drive(ColorTween(begin: Colors.red, end: colors.blue));

Yet ColorTween is a Tween<Color?> and Tween<T extends dynamic> is an Animatable<T>. How can I fix this error? Is the '?' after Color or 'dynamic' a problem? Explicit casting didn't work either:

type 'ColorTween' is not a subtype of type 'Animatable<Color>' in type cast

flutter 2.0.4 dart 2.12.2

like image 910
Objective Avatar asked Apr 10 '21 16:04

Objective


2 Answers

The Color type of the Animation in the assignment is missing the '?' as ColorTween is a Tween<Color?>.

like image 142
Objective Avatar answered Nov 10 '22 17:11

Objective


Try like this:

TweenSequenceItem(
  weight: 1.0,
  tween: ColorTween(
    begin: Colors.black,
    end: Colors.lightBlue,
  ) as Animatable<Color>,
)
like image 25
IvanPavliuk Avatar answered Nov 10 '22 17:11

IvanPavliuk