Fixed dialog box at the end of practice

This commit is contained in:
BroodjeAap 2020-10-27 21:25:53 +01:00
parent a0ce8e9230
commit edf2556752

View file

@ -157,48 +157,45 @@ class _MonthPracticeState extends State<MonthPracticePage> {
); );
} }
Future _finishedPractice() { SimpleDialog finishedPracticeDialog() {
showDialog( return SimpleDialog(
context: context, title: Text("Practice Complete!"),
child: SimpleDialog( contentPadding: EdgeInsets.all(50),
title: Text("Practice Complete!"), children: <Widget>[
contentPadding: EdgeInsets.all(50), Row(
children: <Widget>[ mainAxisAlignment: MainAxisAlignment.spaceBetween,
Row( children: <Widget>[
Text("Rounds of Practice:"),
Text(_startCount.toString())
]
),
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[ children: <Widget>[
Text("Rounds of Practice:"), Text("Correct:"),
Text(_startCount.toString()) Text(_correct.toString()),
] ]
), ),
Row( Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[ children: <Widget>[
Text("Correct:"), Text("Incorrect:"),
Text(_correct.toString()), Text(_incorrect.toString()),
] ]
), ),
Row( Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[ children: <Widget>[
Text("Incorrect:"), Text(
Text(_incorrect.toString()), (_correct / _startCount * 100).round().toString() + "%",
] style: TextStyle(
), color: (_correct / _startCount * 100) > 70 ? Colors.green : Colors.red,
Row( fontSize: 30,
mainAxisAlignment: MainAxisAlignment.center, )
children: <Widget>[ ),
Text( ]
(_correct / _startCount * 100).round().toString() + "%", ),
style: TextStyle( ]
color: (_correct / _startCount * 100) > 70 ? Colors.green : Colors.red,
fontSize: 30,
)
),
]
),
]
)
); );
} }
@ -261,13 +258,17 @@ class _MonthPracticeState extends State<MonthPracticePage> {
} }
_count += 1; _count += 1;
answers.add(MonthPracticeAnswer(_month, answer)); answers.add(MonthPracticeAnswer(_month, answer));
if((_startCount - _count) == 0) {
_finishedPractice();
Navigator.pop(context);
return;
}
setState(() => { setState(() => {
_month = Months.getFromInt(_random.nextInt(Months.length)) _month = Months.getFromInt(_random.nextInt(Months.length))
}); });
if((_startCount - _count) == 0) {
showDialog(
context: context,
child: finishedPracticeDialog()
).then((val) {
Navigator.pop(context);
});
return;
}
} }
} }