【发布时间】:2021-10-11 11:04:13
【问题描述】:
class Body extends StatefulWidget {
int? pageIdx;
Body({@required this.pageIdx});
@override
State<StatefulWidget> createState() => _MainContetns(pageIdx: pageIdx);
}
class _MainContetns extends State<Body> {
int? pageIdx;
_MainContetns({this.pageIdx});
void initState() {
pageIdx = widget.pageIdx;
}
final screens = [
...
];
@override
Widget build(BuildContext context) {
void _onItemTapped(int index) {
setState(() {
pageIdx = index;
if (index == 2) {
Navigator.push(
context,
PageTransition(
type: PageTransitionType.topToBottom, child: Home()));
}
});
}
return Scaffold(
body: screens[pageIdx], -- error
bottomNavigationBar: BottomNavigationBar(
items: <BottomNavigationBarItem>[
...
],
currentIndex: pageIdx, -- error
onTap: _onItemTapped,
),
);
}
}
我尝试传输小部件数据,但出现错误。
这是使用底部导航栏时屏幕切换的参数数据。
我们应该如何修复错误?我无法支持此解决方案。
【问题讨论】:
标签: flutter dart statefulwidget