一段时间后打开下一页 |飞镖

Opening next page after period of time | flutter dart

我有一个按钮,点击后它会旋转(代码被缩短以提高可读性)。

有什么问题吗?

当用户单击按钮时,它会旋转(函数 animation() 执行此操作)并导航到下一页,但问题是当用户在完全旋转,然后在 1000 毫秒之后它会打开很多 FriendsPageEditable,他必须按导航后退按钮返回。

我想要什么:

我希望这个“额外的网站”不会出现。

解决这个我不知道如何实现 bcs 的问题的方法:

 bool buttonEnabled = true;

 floatingActionButton: FloatingActionButton(
        onPressed: () async {
          animation();
          await Future.delayed(const Duration(milliseconds: 1000));
          if (buttonEnabled) {
            buttonEnabled = true;
            Navigator.push(
                context,
                MaterialPageRoute(
                    builder: (context) => const FriendsPageEditable()));
          } else {
            null;
          }
        },
        child: const Icon(
          Icons.settings,
        ),
      ),

Malak 试试这个:

bool buttonClicked = false;

 floatingActionButton: FloatingActionButton(
        onPressed: () async {
          // Then check if the button has been clicked
          if(!buttonClicked)
            buttonClicked = true;
          else
            return;
          
          animation();
          await Future.delayed(const Duration(milliseconds: 1000), (){
            Navigator.push(
                context,
                MaterialPageRoute(
                    builder: (context) => const FriendsPageEditable()));
            });
        buttonClicked = !buttonClicked;
        },
        child: const Icon(
          Icons.settings,
        ),
      ),