dart flutter_fortune_wheel在页面加载时旋转|Flutter

093gszye  于 2023-07-31  发布在  Flutter
关注(0)|答案(2)|浏览(139)

我使用flutter_fortune_wheel:^1.2.0 from pub.dev https://pub.dev/packages/flutter_fortune_wheel我有一个问题,当我打开页面时,轮子自动旋转。我希望它只在我单击它时旋转。

return Scaffold(
  body: GestureDetector(
    onHorizontalDragEnd: (DragEndDetails details) {
      setState(() {
        selected.add(
          Random().nextInt(tricklist.length),
        );
      });
    },
    onVerticalDragEnd: (DragEndDetails details) {
      setState(() {
        selected.add(
          Random().nextInt(tricklist.length),
        );
      });
    },
    onTap: () {
      setState(() {
        selected.add(
          Random().nextInt(tricklist.length),
        );
      });
    },
    child: Stack(
      //fit: StackFit.expand,
      children: [
        Padding(
          padding: const EdgeInsets.all(8.0),
          child: Align(
            alignment: Alignment.center,
            child: FortuneWheel(
              items: [
                for (var items in tricklist)
                  FortuneItem(
                    child: Text(items),
                  ),
              ],
              indicators: const <FortuneIndicator>[
                FortuneIndicator(
                    alignment: Alignment.topCenter,
                    child: TriangleIndicator(color: Colors.black)),
              ],
              selected: selected.stream,                                            
            ),
          ),
        ),
      ],
    ),
  ),
);

字符串
谢谢你的帮助

lc8prwob

lc8prwob1#

将animateFirst标志设置为false,如下所示:

animateFirst: false

字符串
并使用 onFling 回调函数添加触摸滚轮时所需的行为。

7cwmlq89

7cwmlq892#

您可以尽可能避免使用任何第三方软件包,因为它们可能无法正确维护,并且可以使用它提供的核心Flutter动画功能。因为Flutter动画非常简单易用。对于您的用例,我们可以使用Transform.rotate()方法上的双补间和动画控制器轻松旋转任何小部件。
查看更多信息:Create wheel of fortune animation in flutter

相关问题