
Hi developer in this Flutter Tutorial, I am sharing how to navigate a new screen and back using flutter. In Android, our screen would have a new Activities. In iOS, we have called new ViewControllers. and In Flutter, screens are just Widgets!. So here I am explaining an easy way to in flutter how to navigate a new screen and back.
Screen navigation is the key part of the UI/UX for any Application. due to multiple functionality to navigate to screen A to screen B. and manage all screen to navigation.
Step: 1 Create a Flutter Project using Android Studio.
Let’s Start on these tutorial first of you can create a flutter project using android studio. If you do not know how to create a brand new flutter project, then please check out. Creating Simple Flutter Application in Android Studio.
Step: 2 Create Two dart files HomeScreen and SecondScreen.
Now, create one folder inside the lib folder called simple_navigation and create two screens inside that folder.
- HomeScreen.dart
- SecondScreen.dart
after complete, this step open you HomeScreen.dart file and add these code.
Step: 3 Add this code in HomeScreen.dart file.
On the home screen create a button on click on button go to the second screen. In Flutter, these elements are called routers, and they’re managed by a Navigator widget. The navigator leads a stack of Route objects and provides methods for controlling the stack, like Navigator.push and Navigator.pop.
import 'package:flutter/material.dart';
import './SecondScreen.dart';
class HomeScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Home Screen'),
),
body: Center(
child: RaisedButton(
child: Text('Go to Second Screen'),
color: Theme.of(context).primaryColor,
textColor: Colors.white,
onPressed: () => Navigator.push(
context,
MaterialPageRoute(
builder: (BuildContext context) => SecondScreen(),
)))),
);
}
}
Step:4 SecondScreen.dart file source code.
import 'package:flutter/material.dart';
class SecondScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Second Screen'),
),
body: Center(
child: RaisedButton(
child: Text('Back To HomeScreen'),
color: Theme.of(context).primaryColor,
textColor: Colors.white,
onPressed: () => Navigator.pop(context)
),
),
);
}
}
Step: 5 Main.dart file source code.
import "package:flutter/material.dart";
import './app_example/home_widget.dart';
import './simple_navigation/HomeScreen.dart';
void main() => runApp(MyApp());
//class App extends StatelessWidget {
// @override
// Widget build(BuildContext context) {
// return MaterialApp(
// title: 'My Flutter App',
// home: Home(),
// );
// }
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(primarySwatch: Colors.blue), home: HomeScreen());
}
}
after complete, this step run your application if your application and check you flutter navigation example.





