如何在 Flutter 中点击启动 Lottie 动画?

How to start a Lottie Animation on tap in Flutter?

我想在我的 Flutter 应用程序中使用 Lottie 动画作为微交互。我希望这个动画在用户点击它时播放。在阅读 Lottie Package 的文档后,我知道如何添加动画以及如何显示它。但我还不明白如何使用 Gesture Detectors onTap 属性 启动动画并只播放一次。

我尝试使用动画控制器的 forward() 方法,但它似乎不起作用:

GestureDetector(
        onTap: () {
          _controller.forward();
        },
        child: Center(
          child: Lottie.asset('assets/test.json', repeat: false, controller: _controller),
        ),
      ),

这行得通吗?

GestureDetector(
        onTap: () {
          _controller.forward();
        },
        child: Center(
          child: Lottie.asset('assets/test.json',
          repeat: false,
          controller: _controller,
          onLoaded: (composition) {
                _controller
                  ..duration = composition.duration;
              },
          ),
        ),
      )