老师,如果我想在滑动viewpage的同时切换bottomNavigationBar的item,怎么做?
来源:6-5 StatefulWidget与基础组件【撑起Flutter的半边天】
头都秃了还没变强
2019-08-22
//切换viewpage时调用的方法
_item(int index,String title, MaterialColor color) {
setState(() { //尝试在这里设置,但是并没有效果
_index = index;
});
return Container(
alignment: Alignment.center,
decoration: BoxDecoration(color: color),
child: Text(title, style: TextStyle(color: Colors.white)),
);
}
写回答
2回答
-
慕码人5126885
2019-08-23
onTap(index){ setState(() { _currentIndex = index; _controller.animateToPage(index, duration: Duration(milliseconds: 300), curve: Curves.ease); }); } body: PageView( controller:_controller, children: <Widget>[ HomePage(), DiscoveredPage(), MyPage(), ], onPageChanged: (index){ onTap(index); }, ),
可是这样有个问题,当我左右滑动的时候页面左右滑动超过50%就强制切换到新的页面了,体验特别不友好
10 -
CrazyCodeBoy
2019-08-23
添加下面代码:
body: PageView(
controller: _controller,
onPageChanged: (index) {
setState(() {
currentIndex = index;
});
},012019-08-23
相似问题