在Flutter应用中,导航栏切换页面后默认情况下会丢失原页面状态,即每次进入页面时都会重新初始化状态,如果在initState中打印日志,会发现每次进入时都会输出,显然这样增加了额外的开销,并且带来了不好的用户体验。
1, 1,BottomNavigationBar + BottomNavigationBarItem(index_page页面)
2,自定义 BottomAppBar 使用 BottomAppBar 来实现
3,TabBar + TabBarView
源码github