import 'package:adv_basics/questions_screen.dart'; import 'package:adv_basics/start_screen.dart'; import 'package:adv_basics/data/questions.dart'; import 'package:adv_basics/results_screen.dart'; import 'package:flutter/material.dart'; class Quiz extends StatefulWidget { const Quiz({super.key}); @override State createState() { return _QuizState(); } } class _QuizState extends State { List selectedAnswers = []; var activeScreen = 'start-screen'; void switchScreen() { selectedAnswers.clear(); setState(() { activeScreen = 'questions-screen'; }); } void chooseAnswer(String answer) { selectedAnswers.add(answer); if (selectedAnswers.length == questions.length) { setState(() { activeScreen = 'results-screen'; }); } } @override Widget build(context) { Widget screenWidget = StartScreen(switchScreen); if (activeScreen == 'questions-screen') { screenWidget = QuestionsScreen( onSelectAnswer: chooseAnswer, ); } if (activeScreen == 'results-screen') { screenWidget = ResultsScreen( chosenAnswers: selectedAnswers, onRestartQuiz: switchScreen, ); } return MaterialApp( home: Scaffold( body: Container( decoration: const BoxDecoration( gradient: LinearGradient( colors: [ Color.fromARGB(255, 78, 13, 151), Color.fromARGB(255, 107, 15, 168), ], begin: Alignment.topLeft, end: Alignment.bottomRight, ), ), child: screenWidget, ), ), ); } }