@@ -3,6 +3,7 @@ import 'package:flutter/material.dart';
3
3
import 'package:food_recipe/src/blocs/listmeals/list_meals_bloc.dart' ;
4
4
import 'package:food_recipe/src/models/categories/categories.dart' ;
5
5
import 'package:food_recipe/src/models/filtercategories/filter_categories.dart' ;
6
+ import 'package:food_recipe/src/ui/detailmeals/detail_meals_screen.dart' ;
6
7
import 'package:food_recipe/src/utils/utils.dart' ;
7
8
8
9
class ListMealsScreen extends StatefulWidget {
@@ -74,8 +75,16 @@ class _ListMealsScreenState extends State<ListMealsScreen> {
74
75
padding: const EdgeInsets .only (bottom: 16.0 ),
75
76
child: GestureDetector (
76
77
onTap: () {
77
- // TODO: do something in here
78
- print ("tap item list meals" );
78
+ Navigator .push (
79
+ context,
80
+ MaterialPageRoute (builder: (context) {
81
+ return DetailMealsScreen (
82
+ filterCategoryItem.idMeal,
83
+ filterCategoryItem.strMeal,
84
+ filterCategoryItem.strMealThumb,
85
+ );
86
+ }),
87
+ );
79
88
},
80
89
child: Card (
81
90
elevation: 8.0 ,
@@ -86,14 +95,17 @@ class _ListMealsScreenState extends State<ListMealsScreen> {
86
95
borderRadius: BorderRadius .circular (16.0 ),
87
96
child: Stack (
88
97
children: < Widget > [
89
- FadeInImage (
90
- image: NetworkImage (
91
- filterCategoryItem.strMealThumb),
92
- placeholder: AssetImage (
93
- "assets/images/img_placeholder.jpg" ),
94
- fit: BoxFit .cover,
95
- width: double .infinity,
96
- height: mediaQuery.size.width / 1.5 ,
98
+ Hero (
99
+ tag: "image_detail_meals_${filterCategoryItem .idMeal }" ,
100
+ child: FadeInImage (
101
+ image: NetworkImage (
102
+ filterCategoryItem.strMealThumb),
103
+ placeholder: AssetImage (
104
+ "assets/images/img_placeholder.jpg" ),
105
+ fit: BoxFit .cover,
106
+ width: double .infinity,
107
+ height: mediaQuery.size.width / 1.5 ,
108
+ ),
97
109
),
98
110
Container (
99
111
width: double .infinity,
@@ -115,13 +127,15 @@ class _ListMealsScreenState extends State<ListMealsScreen> {
115
127
Padding (
116
128
padding: const EdgeInsets .all (16.0 ),
117
129
child: Row (
118
- crossAxisAlignment: CrossAxisAlignment .start,
130
+ crossAxisAlignment:
131
+ CrossAxisAlignment .start,
119
132
children: < Widget > [
120
133
Expanded (
121
134
child: Text (
122
135
filterCategoryItem.strMeal,
123
- style:
124
- Theme .of (context).textTheme.title,
136
+ style: Theme .of (context)
137
+ .textTheme
138
+ .title,
125
139
maxLines: 2 ,
126
140
),
127
141
),
0 commit comments