import 'package:flutter/material.dart';
class QuizApp extends StatefulWidget {
@override
_QuizAppState createState() => _QuizAppState();
}
class _QuizAppState extends State {
int _currentQuestionIndex = 0;
final List _questions = [
Question(
'Қазақстан Республикасындағы мемлекеттiк тiл?',
['орыс тілі', 'қазақ тілі', 'өзбек тілі', 'қытай тілі'],
1,
),
Question(
'Қандай программалық тілдер арқылы мобильді қосымша жасауға болады?',
['html,css', 'sass, c#', 'java, swift', 'ағылшын, қытай'],
2,
),
Question(
'Күн жүйесінде неше планета бар?',
['3', '5', '8', '9'],
3,
),
];
bool _showResult = false;
bool _isAnsweredCorrectly = false;
void _checkAnswer(int selectedOption) {
setState(() {
_showResult = true;
_isAnsweredCorrectly =
selectedOption == _questions[_currentQuestionIndex].correctAnswer;
});
}
void _nextQuestion() {
setState(() {
_currentQuestionIndex++;
if (_currentQuestionIndex >= _questions.length) {
_currentQuestionIndex = 0;
}
_showResult = false;
});
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Тест'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
_questions[_currentQuestionIndex].questionText,
style: TextStyle(fontSize: 20),
),
SizedBox(height: 20),
for (var i = 0;
i < _questions[_currentQuestionIndex].options.length;
i++)
ElevatedButton(
onPressed: () => _checkAnswer(i),
child: Text(_questions[_currentQuestionIndex].options[i]),
),
SizedBox(height: 20),
if (_showResult)
Text(
_isAnsweredCorrectly ? 'Дұрыс!' : 'Дұрыс емес!',
style: TextStyle(fontSize: 20),
),
ElevatedButton(
onPressed: _nextQuestion,
child: Text('Келесі сұрақ'),
),
],
),
),
),
);
}
}
class Question {
final String questionText;
final List options;
final int correctAnswer;
Question(this.questionText, this.options, this.correctAnswer);
}
void main() {
runApp(QuizApp());
}