Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Flutter appBar Backbutton doesn't appear

I've successfully navigated to a class in a new file, but now I'm not getting a backbutton on my appBar. Here is my navigation from main.dart...

new RaisedButton(
                onPressed: () {
                  Navigator.pushNamed(context, '/searchpage');
                },

and here is my SearchPage appBar..

class SearchPageState extends State<SearchPage> {
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
        routes: <String, WidgetBuilder>{
          '/loginpage': (BuildContext context) => new Login.LoginPage(),
          '/mainpage': (BuildContext context) => new Main.MyApp(),
        },
        home: new Scaffold(
      appBar: new AppBar(
        title: new Text(
          "Search",
          style: new TextStyle(fontWeight: FontWeight.bold),
        ),
      ),
like image 354
Charles Jr Avatar asked Aug 30 '17 23:08

Charles Jr


2 Answers

You should only have one MaterialApp at the root of your app. Each MaterialApp creates its own Navigator, and the existence of multiple routes on the navigation stack is what causes the implicit back button to appear in the leading slot of the AppBar.

like image 179
Collin Jackson Avatar answered Oct 17 '22 00:10

Collin Jackson


Remove NavigationDrawer from page, where you need to see back button. If your page specified NavigationDrawer, then hamburger menu will be showed instead of back button.

like image 36
Yauhen Sampir Avatar answered Oct 16 '22 23:10

Yauhen Sampir