您可以使用带有计时器的AbsorbPointer小部件来禁用操作一段时间,或者您可以简单地将您的onTap
方法设置为null
,而无需使用AbsorbPointer
您可以创建一个标志,一旦用户按下按钮一次,您可以将其设置为false。然后在一定时间后,标志将再次变为真。只有当标志=真时,按钮操作才会发生。
所以创造旗帜
bool goodToGo = true;
然后按下按钮
onPressed:(){
if(!goodToGo){return;}
if(goodToGo){debugPrint("Going to the moon!");}// do your thing
goodToGo = false;
Future.delayed(const Duration(milliseconds: 3000), () {
goodToGo = true;
});
}