Flutter 颤振:如何限制用户在给定时间段内单击按钮的次数?
我正在使用一个按钮,它在快捷键栏中显示提示。现在如果我快速按下按钮,比如说50次,snackbar会出现几秒钟,然后再次出现,然后再次出现,直到显示50次。我怎样才能防止这种情况 这是我的密码-Flutter 颤振:如何限制用户在给定时间段内单击按钮的次数?,flutter,dart,Flutter,Dart,我正在使用一个按钮,它在快捷键栏中显示提示。现在如果我快速按下按钮,比如说50次,snackbar会出现几秒钟,然后再次出现,然后再次出现,直到显示50次。我怎样才能防止这种情况 这是我的密码- actions: <Widget>[ Padding( padding: const EdgeInsets.all(8.0), child: RaisedButton(
actions: <Widget>[
Padding(
padding: const EdgeInsets.all(8.0),
child: RaisedButton(
elevation: 7,
color: Colors.black26,
child: Text('Button'),
onPressed: () {
_scaffoldKey.currentState
.showSnackBar(SnackBar(content: Text("Welcome")));
},
),
),
],
操作:[
填充物(
填充:常数边集全部(8.0),
孩子:升起按钮(
标高:7,
颜色:颜色。黑色,
子项:文本(“按钮”),
已按下:(){
_scaffoldKey.currentState
.showSnackBar(SnackBar(内容:文本(“欢迎”));
},
),
),
],
您可以使用软件包解决您的问题。只需使用冷却功能在有限的时间内禁用按钮按下,以防止多次点击。该软件包还提供了许多其他功能,可用于解决您的问题。您可以使用该软件包来解决您的问题。只需使用冷却功能在有限的时间内禁用按钮按下,以防止多次点击。软件包还提供了许多其他功能,可用于解决您的问题。解决此问题的方法多种多样。一个是,你可以很容易地在一段时间内防止多次点击
bool _enabled = true;
onPressed: !_enabled
? null
: () {
setState(() => _enabled = false);
_scaffoldKey.currentState
.showSnackBar(SnackBar(content: Text("Welcome")));
// Enable it after 1s.
Timer(Duration(seconds: 1), () => setState(() => _enabled = true));
},
有不同的方法来解决这个问题。一个是,你可以很容易地在一段时间内防止多次点击
bool _enabled = true;
onPressed: !_enabled
? null
: () {
setState(() => _enabled = false);
_scaffoldKey.currentState
.showSnackBar(SnackBar(content: Text("Welcome")));
// Enable it after 1s.
Timer(Duration(seconds: 1), () => setState(() => _enabled = true));
},
你有没有试过在按钮上应用一个带计时器的BLoC方法?@像鱼一样的哺乳动物没有,我没有试过。你能给出一个详细的答案吗?你有没有试过在按钮上应用一个带计时器的BLoC方法?@像鱼一样的哺乳动物没有,我没有试过。你能发布一个详细的答案吗?谢谢你的简单解决方案!虽然你混淆了真与假,你应该编辑它。谢谢你的简单解决方案!虽然你混淆了真假,但你应该编辑它。