在颤振声中停止点击时停止GIF动画

时间:2020-04-27 20:01:24

标签: flutter dart flutter-layout flutter-animation flutter-image

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

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

但是问题是图像会持续进行动画处理。因此,任何人都知道如何实施,请帮助我。

1 个答案:

答案 0 :(得分:2)

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

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

使用它,您可以使用类似于动画控制器的方式来控制gif动画的方式。这是您可以使用它的示例:

enter image description here

用法示例:

首先声明一个GifController和一个GifImage,它基本上是带有控制器的“图像”。

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);