How to pass value to State class in Flutter?
You need to initialize tabs in the initState() method. Change your _MainScreenState class to match this:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | class _MainScreenState extends State<MainScreen> { int currentTabIndex = 0; List<Widget> tabs; String $pagetitle = "Home"; onTapped(int index) { setState(() { currentTabIndex = index; }); } @override void initState() { super.initState(); tabs = [ TabScreen("Home", widget.email), TabScreen2("Message"), TabScreen3("Profile"), ]; } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text($pagetitle), ), body: tabs[currentTabIndex], bottomNavigationBar: BottomNavigationBar( onTap: onTapped, currentIndex: currentTabIndex, items: [ BottomNavigationBarItem( icon: Icon(Icons.search), title: Text("Jobs"), ), BottomNavigationBarItem( icon: Icon(Icons.mail), title: Text("Messages"), ), BottomNavigationBarItem( icon: Icon(Icons.person), title: Text("Profile"), ) ], ), ); } } |
If you like this question & answer and want to contribute, then write your question & answer and email to freewebmentor[@]gmail.com. Your question and answer will appear on FreeWebMentor.com and help other developers.