我使用底部导航栏和输入一些数据,如名称和列表等。因此,当我输入任何数据并更改选项卡时,我希望当我再次回到前一个选项卡时,数据应该保留。我期待着一个关于数据保留在底部导航栏在Flutter这个问题的解决方案。
iklwldmw1#
请使用IndexedStack检查以下代码:
class _HomeState extends State<Home> { int _currentIndex = 0; @override Widget build(BuildContext context) { return Scaffold( body: SafeArea( child: IndexedStack( index: _currentIndex, children: const [ Page1(), Page2(), ], ), ), bottomNavigationBar: BottomNavigationBar( currentIndex: _currentIndex, onTap: (int index) => setState(() => _currentIndex = index), items: [ BottomNavigationBarItem(icon: Icon(Icons.first_page), label: 'Page 1'), BottomNavigationBarItem(icon: Icon(Icons.last_page), label: 'Page 2'), ], ), ); } }
**注意:**请确保IndexedStack中的子控件列表不变。这将防止在应用setState()时重新创建小部件。
IndexedStack
setState()
1条答案
按热度按时间iklwldmw1#
请使用IndexedStack检查以下代码:
**注意:**请确保
IndexedStack
中的子控件列表不变。这将防止在应用setState()
时重新创建小部件。