【问题标题】:How to start a Lottie Animation on tap in Flutter?如何在 Flutter 中点击启动 Lottie 动画?
【发布时间】:2021-01-05 22:40:16
【问题描述】:

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

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

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

【问题讨论】:

    标签: flutter lottie


    【解决方案1】:

    这行得通吗?

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

    【讨论】:

      猜你喜欢
      • 2019-08-16
      • 2018-12-21
      • 2022-10-23
      • 2023-02-17
      • 2021-12-27
      • 2021-10-01
      • 2022-06-16
      • 1970-01-01
      • 2020-01-01
      相关资源
      最近更新 更多