如何使用flutter_animate重新启动动画?

frebpwbc  于 2023-01-02  发布在  Flutter
关注(0)|答案(1)|浏览(171)

我最近开始使用flutter_animate软件包,我对它一见钟情,但是当一个小部件被重建时,我如何重新启动动画呢?
例如,我下面的小部件动画效果很好

Text('Good\nJob!')
  .animate()
  .fadeOut(duration: 2000.ms).scaleXY(duration: 2000.ms, end: 2.0)

但是当I setState和小部件重建时,动画没有重新启动,文本仍然淡出。有没有一种方法可以在每次小部件重建时触发动画的重新启动?

ccrfmcuu

ccrfmcuu1#

您可以使用Flutter提供的AnimatedBuilder微件

像这样

AnimatedBuilder(
  animation: _animation,
  builder: (context, child) {
    return Text('Good\nJob!')
      .animate()
      .fadeOut(duration: 2000.ms).scaleXY(duration: 2000.ms, end: 2.0);
  },
)

用法

setState(() {
  _animation.value = newValue;
});

相关问题