[英]BottomNavigationBar with Navigator?
I have a problem with this code, is not working why?我对这段代码有问题,为什么不工作? please.
请。
My code:我的代码:
Container(
color: Colors.white,
child: BottomNavigationBar(
onTap: (_index) {
StepState.disabled.index;
switch (_index) {
case 0:
onTap:
() {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => Home()),
);
};
break;
case 1:
onTap:
() {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => NosVoyages()),
);
};
break;
}
;
},
currentIndex: _index,
items: [
BottomNavigationBarItem(
label: '',
icon: Padding(
padding: const EdgeInsets.only(top: 10.0),
child: Icon(Icons.home),
)),
BottomNavigationBarItem(
label: '',
icon: Padding(
padding: const EdgeInsets.only(top: 10.0),
child: Icon(Icons.list_alt),
)),
],
type: BottomNavigationBarType.fixed,
backgroundColor: Colors.white,
unselectedItemColor: Colors.black,
),
);
The home page is loading fine but as soon as I click any button, it change nothing.主页加载正常,但只要我点击任何按钮,它什么都没有改变。 Probably there is an issue with MaterialApp or Scaffold but I am not able to fix it yet.
MaterialApp 或 Scaffold 可能存在问题,但我还无法修复它。 Can anyone tell me what's the problem and how to fix it?
谁能告诉我是什么问题以及如何解决?
try this variant initialized _index试试这个变体初始化_index
int _index=0;
@override
Widget build(BuildContext context) {
return Scaffold(
body: SafeArea(
top: false,
child: Container(
color: Colors.white,
child: Padding(
padding: const EdgeInsets.all(20.0),
child: BottomNavigationBar(
onTap: (_index) {
StepState.disabled.index;
switch (_index) {
case 0:
{
Navigator.push(
context,
MaterialPageRoute(builder: (context) => Home()),
);
setState(() {
_index = 1;
});
}
;
break;
case 1:
{
setState(() {
_index = 0;
});
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => NosVoyages()),
);
}
;
break;
}
},
currentIndex: _index,
items: [
BottomNavigationBarItem(
label: '',
icon: Padding(
padding: const EdgeInsets.only(top: 10.0),
child: Icon(Icons.home),
)),
BottomNavigationBarItem(
label: '',
icon: Padding(
padding: const EdgeInsets.only(top: 10.0),
child: Icon(Icons.list_alt),
)),
],
type: BottomNavigationBarType.fixed,
backgroundColor: Colors.white,
unselectedItemColor: Colors.black,
),
),
)));
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.