gpt4 book ai didi

android - Flutter - Navigator 的 'parent != ' null' is not true' 错误

转载 作者:IT王子 更新时间:2023-10-29 06:40:36 27 4
gpt4 key购买 nike

我写了一些检查,然后如果条件为真则导航到下一页。但是,只要该条件返回 true 并且我打算导航,我就会不断收到错误消息

class BuyTickets extends StatefulWidget {

@override
_BuyTicketsState createState() => new _BuyTicketsState();
}

class _BuyTicketsState extends State<BuyTickets> {

@override
void initState(){
...
if(condition){
//Skip to next page
Navigator.push(
context,
MaterialPageRoute(
builder: (BuildContext context) => SelectSeat(data: widget.data)
)
);
}

super.initState();
}

@override
Widget build(BuildContext context) {
return new Scaffold(
...
)
}

错误:

enter image description here

请问我该如何解决?

最佳答案

它提示找不到父级,因为与小部件关联的渲染对象未完全创建和安装。

在所有这些情况下,您需要将调用延迟到渲染对象安装的那一刻。一种方法是在第一帧之后执行它。

  @override
void initState() {
super.initState();

if(condition){
WidgetsBinding.instance.addPostFrameCallback((_) async {
Navigator.push(
context,
MaterialPageRoute(
builder: (BuildContext context) => SelectSeat(data: widget.data)
)
);
});
}
}

关于android - Flutter - Navigator 的 'parent != ' null' is not true' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52559406/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com