import 'package:flutter/material.dart'; // Класс приложения void main() { runApp(const MyApp()); } class MyApp extends StatelessWidget { const MyApp({super.key}); @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, title: 'Flutter Demo', theme: ThemeData( // Настраиваем цветовую схему приложения colorScheme: ColorScheme.fromSeed(seedColor: Colors.indigoAccent), useMaterial3: true, ), home: const MyHomePage(title: 'Валова Анна Дмитриевна'), ); } } // Класс домашней страницы class MyHomePage extends StatefulWidget { const MyHomePage({super.key, required this.title}); final String title; @override State createState() => _MyHomePageState(); } class _MyHomePageState extends State { // Список слов и их переводов final List words = [ Word(word: 'Hello', translation: 'Привет', image: 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcS69a8OWnRueQNykBpuyfbGxl3gt5ct46NOHg&s'), Word(word: 'Book', translation: 'Книга', image: 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSfbH7Ckkbzrr3KZlb144GTaAmJnz87U9opGw&s'), Word(word: 'Cat', translation: 'Кот', image: 'https://upload.wikimedia.org/wikipedia/commons/0/0e/Felis_silvestris_silvestris.jpg'), ]; int currentIndex = 0; @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( backgroundColor: Theme.of(context).colorScheme.inversePrimary, title: Text(widget.title), ), body: Center( child: SingleChildScrollView( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ for (var word in words) _Card( word: word.word, translation: word.translation, image: word.image, ), // Кнопки "Знаю" и "Не знаю" /* Row( mainAxisAlignment: MainAxisAlignment.center, children: [ // Кнопка "Знаю" ElevatedButton( onPressed: () { setState(() { currentIndex++; if (currentIndex >= words.length) { currentIndex = 0; } }); }, child: const Text('Знаю'), ), const SizedBox(width: 20), // Кнопка "Не знаю" ElevatedButton( onPressed: () { // Переходим к предыдущей карточке setState(() { currentIndex--; if (currentIndex < 0) { currentIndex = words.length - 1; } }); }, child: const Text('Не знаю'), ), ], ),*/ ], ), ), ), ); } } // Класс карточки class _Card extends StatelessWidget { final String word; final String translation; final String image; const _Card({ required this.word, required this.translation, required this.image, }); @override Widget build(BuildContext context) { return Container( padding: const EdgeInsets.all(20), margin: const EdgeInsets.all(10), decoration: BoxDecoration( color: word == "Cat" ? Colors.greenAccent : Colors.indigoAccent , borderRadius: BorderRadius.circular(10), ), child: Column( children: [ Image.network(image, width: 300), Text( word, style: Theme.of(context).textTheme.headlineLarge, ), // Перевод слова Text( translation, style: Theme.of(context).textTheme.bodyMedium, ), ], ), ); } } // Класс для слов class Word { final String word; final String translation; final String image; Word({required this.word, required this.translation, required this.image}); }