создала третью ветку

This commit is contained in:
bulatova_karina 2024-10-02 13:15:15 +04:00
parent 7d6861624a
commit bc6079d0da
3 changed files with 9 additions and 12 deletions

View File

@ -9,7 +9,6 @@ void main() {
runApp(const MyApp());
}
// Расширение для Genre, добавляющее метод для получения описания жанра
extension GenreExtension on Genre {
String get description {
switch (this) {
@ -87,19 +86,21 @@ class _MyHomePageState extends State<MyHomePage> {
final movie = _movies[index];
return ListTile(
title: Text(movie.title),
subtitle: Text('Genre: ${movie.genre.description}, Rating: ${movie.rating.toStringAsFixed(1)}'),
subtitle: Text('Жанр: ${movie.genre.description}, Рейтинг: ${movie.rating.toStringAsFixed(1)}'),
onTap: () {
movie.printDetails();
showDialog(
context: context,
builder: (context) {
return AlertDialog(
title: Text(movie.title),
content: Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text('Genre: ${movie.genre.description}'),
Text('Rating: ${movie.rating.toStringAsFixed(1)}'),
Text('Жанр: ${movie.genre.description}'),
Text('Рейтинг: ${movie.rating.toStringAsFixed(1)}'),
],
),
actions: [
@ -107,7 +108,7 @@ class _MyHomePageState extends State<MyHomePage> {
onPressed: () {
Navigator.of(context).pop();
},
child: const Text('Close'),
child: const Text('Закрыть'),
),
],
);

View File

@ -8,10 +8,9 @@ class Movie {
Movie({required this.title, required this.genre, required this.rating});
// Метод для вывода информации о фильме
void printDetails() {
print('Title: $title');
print('Genre: ${genre.description}');
print('Rating: $rating');
print('''Title: $title
Genre: ${genre.description}
Rating: $rating''');
}
}

View File

@ -7,9 +7,7 @@ class MovieGenerator {
MovieGenerator({required this.count});
// Метод для имитации задержки и генерации списка фильмов
Future<List<Movie>> generateMoviesWithDelay() async {
// Имитация задержки
await Future.delayed(Duration(seconds: 2));
final random = Random();
@ -21,7 +19,6 @@ class MovieGenerator {
});
}
// Метод для сортировки списка фильмов по рейтингу
List<Movie> sortMovies(List<Movie> movies) {
return movies..sort((a, b) => b.rating.compareTo(a.rating));
}