方案1:
final List<BottomNavigationBarItem> items = [
BottomNavigationBarItem(icon: Icon(Icons.home),title: Text('工作台')),
BottomNavigationBarItem(icon: Icon(Icons.message),title: Text('资讯攻略')),
BottomNavigationBarItem(icon: Icon(Icons.person),title: Text('我的')),
];
int index = 0;
final bodyList = [HomePage(),MessagePage(),MinePage()];
@override
Widget build(BuildContext context) {
return Scaffold(
bottomNavigationBar: BottomNavigationBar(
items: items,
currentIndex: index,
onTap: (int i) {
setState(() {
index = i;
});
},
selectedItemColor: Color(0xFFF12E49),
unselectedItemColor: Color(0xFF898A8D),
selectedFontSize: 12,
unselectedFontSize: 12,
),
body: bodyList[index],
);
}
缺陷:每个页面的状态不保存,从页面二切回页面一,页面一状态重置
<