我有一个函数,当用户选择不正确的答案时返回false。
tappedbutton(int index) async {
final userAnswer = await userAnswer();
if (userAnswer) {
// Executing some code
}else{
ErrorSnackbar(); // This snackbar takes 2 second to close.
}
我的目标是在用户选择错误答案后延迟调用功能两秒(用户可以再次点击按钮,不触发任何动作),并立即阻止点击。我怎么才能做到呢?
5条答案
按热度按时间fcipmucu1#
你必须在外部作用域中添加一个helper变量,它将指示用户是否处于答案冷却状态。
最短的解决方案是:
hwazgwia2#
为了延迟一个函数你可以做下面的代码或者使用
Timer()
类eufgjt7s3#
您可以使用
Future.delay
或Timer()
类来实现这一点。uhry853o4#
7kjnsjlb5#
我不认为你的目的是推迟仪式。您正在尝试找到一种方法,让用户等到ErrorSnackbar消失,对吗?
试试这个方法。它节省了上次单击按钮的时间,并取消每次按钮按下,直到2秒过去。