可以通过设置一个 bool 值来控制是否可以点击,以达到防止多次点击的效果。代码如下:

bool _isClickable = true;

GestureDetector(
  onTap: () {
    if (_isClickable) {
      _isClickable = false;
      // do something
      Future.delayed(Duration(seconds: 1), () {
        _isClickable = true;
      });
    }
  },
  child: ...
)

在点击事件中,判断是否可以点击。如果可以,将'_isClickable'设置为false,并执行需要的操作,然后通过'Future.delayed'延迟1秒后再将'_isClickable'设置为true,以便下一次点击。

这样就可以实现防止多次点击了。

Flutter GestureDetector 防抖动点击 - 防止快速多次点击

原文地址: https://www.cveoy.top/t/topic/ovSL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录