flutter navigate to new screen
// Within the `FirstRoute` widget
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => SecondRoute()),
);
}
flutter navigate to new screen
// Within the `FirstRoute` widget
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => SecondRoute()),
);
}
navigate between pages flutter
class Categories extends StatelessWidget {
void showCategoryProductPage(BuildContext ctx) {
Navigator.of(ctx).push(MaterialPageRoute(builder: (_) {
return CategoryProducts();
}));
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: GridView(
children: [
InkWell(
onTap: () => showCategoryProductPage(context),
child: Container(
child: Text(
'Fist Category',
),
),
),
],
),
);
}
}
class CategoryProducts extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('Meal App'),
),
body: Text('Category Product Page'),
);
}
}
navigate between pages flutter
############ USING NAMED ROUTES #############
void main() => runApp(MaterialApp(
home: Categories(),
routes: {
'/category-products': (ctx) => CategoryProducts()
},
));
class Categories extends StatelessWidget {
@override
Widget build(BuildContext context) {
void showCategoryProductPage(BuildContext ctx) {
Navigator.of(ctx).pushNamed('/category-products', arguments: {
'id': '125',
'title': 'Italian Dishes',
});
}
return Scaffold(
body: GridView(
children: [
InkWell(
onTap: () => showCategoryProductPage(context),
child: Container(
child: Text(
'Italian Dishes',
),
),
),
],
),
);
}
}
class CategoryProducts extends StatelessWidget {
@override
Widget build(BuildContext context) {
final themeContext = Theme.of(context);
final routeParameters = ModalRoute.of(context).settings.arguments as Map<String, String>;
final categoryName = routeParameters['title'];
final categoryId = routeParameters['id'];
return Scaffold(
appBar: AppBar(
title: Text(categoryName),
),
body: Center(
child: Text('Category Product Page $categoryId'),
),
);
}
}
Copyright © 2021 Codeinu
Forgot your account's password or having trouble logging into your Account? Don't worry, we'll help you to get back your account. Enter your email address and we'll send you a recovery link to reset your password. If you are experiencing problems resetting your password contact us