title: Keep variable value even after multiple page routes unless changed in flutter
body: <p>I have a drawer widget with many Menu items. I have a variable that takes care of the selected item number. I initiate that with 1 to select the first item on load. When I select another MenuItem the value changes to the corresponding item number. When I redirect/reroute to the drawer page from the Menuitem page it again shows the first Menuitem. I want the variable value to remain and show the menu item which I had selected.</p>
  <pre><code>  import 'package:country_code_picker/country_localizations.dart';
  import 'package:flutter/material.dart';
  import 'package:scoped_model/scoped_model.dart';
  import 'package:wyiin_admin_portal/admin_screens/access_management.dart';
  import 'package:wyiin_admin_portal/admin_screens/brand_management_main.dart';
  import 'package:wyiin_admin_portal/admin_screens/language_management_main.dart';
  import 'package:wyiin_admin_portal/admin_screens/product_category_management_main.dart';
  import 'package:wyiin_admin_portal/admin_screens/promotion_management_main.dart';
  import 'package:wyiin_admin_portal/login/password_reset.dart';
  import 'package:wyiin_admin_portal/model/BrandMgmtScreens.dart';
  import 'package:wyiin_admin_portal/work_in_progress.dart';
  
  class MyAppDrawer extends StatelessWidget {
    final appTitle = 'WYIIN';
  
    @override
    Widget build(BuildContext context) {
      return MaterialApp(
        supportedLocales: [
          const Locale('en', 'US'),
        ],
        debugShowCheckedModeBanner: false,
        localizationsDelegates: [CountryLocalizations.delegate],
        title: appTitle,
        home: MyDrawer(title: appTitle),
        theme: ThemeData(primaryColor: Color.fromRGBO(255, 255, 255, 1)),
      );
    }
  }
  
  class MyDrawer extends StatefulWidget {
    final String title;
    final int destination;
  
    MyDrawer({Key key, this.title, this.destination}) : super(key: key);
  
    @override
    _MyHomePageState createState() =&gt; _MyHomePageState();
  }
  
  class _MyHomePageState extends State&lt;MyDrawer&gt; {
    var _selectedDestination;
  
    @override
    Widget build(BuildContext context) {
      print(_selectedDestination);
      setState(() {
        _selectedDestination =
            _selectedDestination == null ? 1 : _selectedDestination;
      });
      print(_selectedDestination);
      return ScopedModelDescendant&lt;Screen&gt;(builder: (_, child, model) {
        return Row(
          children: [
            Container(
              width: 255,
              child: Drawer(
                child: Container(
                  color: Color.fromRGBO(42, 48, 66, 1),
                  child: ListView(
                    padding: EdgeInsets.zero,
                    children: &lt;Widget&gt;[
                      Padding(
                        padding: const EdgeInsets.all(16.0),
                        child: Text('WYiiN',
                            style: TextStyle(
                                fontSize: 18,
                                fontWeight: FontWeight.bold,
                                color: Colors.white)),
                      ),
                      Padding(
                        padding: const EdgeInsets.only(left: 15, top: 4),
                        child: Text('Menu',
                            style: TextStyle(
                                fontSize: 14,
                                fontWeight: FontWeight.w600,
                                color: Color.fromRGBO(106, 113, 135, 1))),
                      ),
                      
                      ListTile(
                        visualDensity: VisualDensity(horizontal: -4, vertical: 0),
                        contentPadding: const EdgeInsets.only(left: 15, top: 4),
                        leading: _selectedDestination == 6
                            ? Image.asset(
                                'assets/images/Brand Management_active.png')
                            : Image.asset('assets/images/Brand Management.png'),
                        title: Text('Brand management',
                            style: TextStyle(
                              fontSize: 13,
                              fontWeight: FontWeight.w300,
                              color: _selectedDestination == 6
                                  ? Colors.white
                                  : Color.fromRGBO(106, 113, 135, 1),
                            )),
                        selected: _selectedDestination == 6,
                        onTap: () {
                          if (model.showScreen == true) {
                            model.screenDecide();
                          }
                          selectDestination(6);
                        },
                      ),
                      ListTile(
                          visualDensity:
                              VisualDensity(horizontal: -4, vertical: 0),
                          contentPadding: const EdgeInsets.only(left: 15, top: 4),
                          leading: _selectedDestination == 8
                              ? Image.asset(
                                  'assets/images/product_category_management_active.png')
                              : Image.asset(
                                  'assets/images/product_category_management.png'),
                          title: Text('Product Category management',
                              style: TextStyle(
                                fontSize: 13,
                                fontWeight: FontWeight.w300,
                                color: _selectedDestination == 8
                                    ? Colors.white
                                    : Color.fromRGBO(106, 113, 135, 1),
                              )),
                          selected: _selectedDestination == 8,
                          onTap: () {
                            if (model.showProdCatScreen == true) {
                              model.screenDecideProdCat();
                            }
                            selectDestination(8);
                          }),
                      ListTile(
                          visualDensity:
                              VisualDensity(horizontal: -4, vertical: 0),
                          contentPadding: const EdgeInsets.only(left: 15, top: 4),
                          leading: _selectedDestination == 9
                              ? Image.asset(
                                  'assets/images/language_management_active.png')
                              : Image.asset(
                                  'assets/images/language_management.png'),
                          title: Text('Language Management',
                              style: TextStyle(
                                fontSize: 13,
                                fontWeight: FontWeight.w300,
                                color: _selectedDestination == 9
                                    ? Colors.white
                                    : Color.fromRGBO(106, 113, 135, 1),
                              )),
                          selected: _selectedDestination == 9,
                          onTap: () {
                            if (model.showLangMgmtScreen == true) {
                              model.screenDecideLangMgmt();
                            }
                            selectDestination(9);
                          }),
                    ],
                  ),
                ),
              ),
            ),
            VerticalDivider(
              width: 1,
              thickness: 1,
            ),
            Expanded(
              child: Scaffold(
                  body: _selectedDestination == 6
                      ? BrandMgmtMain()
                      : _selectedDestination == 9
                          ? LanguageMgmtMain()
                          : _selectedDestination == 7
                              ? AccessMgmt()
                              : _selectedDestination == 8
                                  ? ProdCatMgmtMain()
                                  : _selectedDestination == 5
                                      ? PromotionMgmtMain()
                                      : _selectedDestination == 2
                                          ? WorkInProgress()
                                          : _selectedDestination == 10
                                              ? PassReset()
                                              : _selectedDestination == 1
                                                  ? WorkInProgress()
                                                  : WorkInProgress()),
            ),
          ],
        );
      });
    }
  
    void selectDestination(int index) {
      setState(() {
        _selectedDestination = index;
        print(_selectedDestination);
      });
    }
  }
  
  void body(int selection) {}
  </code></pre>