在颤振中点击停止 GIF 动画

Stop GIF animation on click in flutter

我是 flutter 的新手。我试图在点击时暂停 GIF 图像的动画并在第二次点击时恢复动画,但我不知道如何在 flutter 中实现它。 我正在为此使用资产图像,

Image.asset('images/xyz.gif')

但问题是图像不断地动画化。所以,任何人都知道如何实施,请帮助我。

据我所知,在 Flutter 中,您不能使用 Image 小部件来控制 gif 的速度、持续时间、循环等等。

但我确实知道 this library 称为 flutter_gifimage 可以帮助您做到这一点。

使用它,您可以使用类似于动画控制器的东西来控制 gif 的动画效果。以下是您可以使用它执行的操作的示例:

用法示例:

首先声明一个 GifController 和一个 GifImage,它基本上是一个带有控制器的 'Image'。

GifController controller= GifController(vsync: this);


     GifImage(
          controller: controller,
          image: AssetImage("images/animate.gif"),
     )

现在您可以像控制任何其他动画控制器一样控制它:

// loop from 0 frame to 29 frame
 controller.repeat(min:0,max:29,period:Duration(millseconds:300));

 // jumpTo thrid frame(index from 0)
 controller.value = 0;

 // from current frame to 26 frame
 controller.animateTo(26);