Я пытаюсь создать приложение, которое требует обратного отсчета, чтобы показать пользователю, сколько времени осталось. Но l oop не работает, как я ожидал.
for(int i=0;i<widget.sets;i++)
{
while(j<5){
CountdownTimer(Duration(seconds: 2), Duration(seconds: 1)).listen((data){
})..onData((data){
print(data.elapsed.inSeconds.toString());
})..onDone((){
print('onDone.........');
});
print('Hello');
j++;
}
j=0;
print((i+1).toString());
}
Я получил этот вывод
флаттер: Привет флаттер: Привет флаттер: Привет флаттер: Привет флаттер: Привет флаттер: Привет флаттер: Привет флаттер: Привет флаттер: Привет флаттер : Привет флаттер: 1 флаттер: 1 флаттер: 1 флаттер: 1 флаттер: 1 флаттер: 1 1 флаттер: 1 флаттер: 1 флаттер: 1 флаттер: 2 флаттер: onDone ......... флаттер: 2 флаттер: onDone ......... флаттер: 2 флаттер: onDone ......... флаттер: 2 флаттер: onDone ......... флаттер: 2 флаттер: onDone .. ....... флаттер: 2 флаттер: onDone ......... флаттер: 2 флаттер: onDone ......... флаттер: 2 флаттер: onDone ....... .. флаттер: 2 флаттер: onDone ......... флаттер: 2 флаттер: onDone .........
ожидаемый результат:
flutter: 1
flutter: 4
flutter: 3
flutter: 4
flutter: 5
flutter: onDone.........
flutter: Hello
flutter: 1
flutter: 4
flutter: 3
flutter: 4
flutter: 5
flutter: onDone.........
flutter: Hello
И так далее. Как заставить этот код работать правильно?