flutter的Navigator 跳转不了页面
- 错误
Navigator operation requested with a context that does not include a Navigator.
- 问题
void main() => runApp(MyApp()); //入口
//-------
Widget build(BuildContext context) { //主结构
return MaterialApp( //问题所在
child: DefaultTabController(
child: HomeWidget(pageList),
length: pageList.length,
));
}
//-----跳转页面处
@override
void initState() { //页面被创建时
//跳转页面....
// TODO: implement initState
super.initState();
}
//------或
actions: <Widget>[ //头部appbar中的按钮区域
IconButton(
onPressed: () {
// 跳转登陆页面.....
},
)]
- 主要问题不能再MaterialApp的跟节点跳转,跟context有关系!
- 解决
void main() => runApp(MaterialApp(home:MyApp()));
- 只要把MaterialApp提在入口区域即可,其余代码在主结构里处理。