如何在颤振中配置动画控制器

时间:2021-03-26 17:09:31

标签: flutter flutter-animation

我有一个问题,比如在处理我的控制器之前,我是否需要致电_controller.stop();

我的代码:-

AnimationController _controller;
@override
void initState()
{
    super.initState();
    _controller = AnimationController(duration: const Duration(milliseconds: 700), vsync: this);
    _controller.repeat(reverse: true);
    _controller.forward();
}

这个动画是为了展示一颗心,就像我们在instagram上点赞一样,然后心会变大变小。

点击心形按钮的代码:-

onTap: ()=>controlUserLikePost(),

功能:-

controlUserLikePost()
{
   _controller.reset();
   _controller.forward();
}

所以,我的问题:-

@override
  void dispose()
  {
    _controller.stop();//do i need to call it as well?
    _controller.dispose();
    super.dispose();// and does it matter if i dispose the controller before this line or after this line.
  }

1 个答案:

答案 0 :(得分:1)

您不必在处理之前停止它,除非您想在某个点停止动画。但是关于安全处理它,只需使用_controller.dispose()

但是,它必须在 super.dispose() 之前,而不是之后,这很重要。