Flutter 我对包装有问题;很棒的“对话”;飘飘然
我尝试使用“awesome_dialog”软件包,该软件包在以下位置提供: 但它不能正常工作:( 以下是我使用的代码:Flutter 我对包装有问题;很棒的“对话”;飘飘然,flutter,Flutter,我尝试使用“awesome_dialog”软件包,该软件包在以下位置提供: 但它不能正常工作:( 以下是我使用的代码: AwesomeDialog( context: context, useRootNavigator: true, animType: AnimType.TOPSLIDE,
AwesomeDialog(
context: context,
useRootNavigator: true,
animType: AnimType.TOPSLIDE,
dialogType: DialogType.WARNING,
tittle: "pas de titre",
desc: "Vous ne pouvez pas sélectionner plus de 5 numéros !!!",
btnOkOnPress: () {
Navigator.pop(context);
},
).show();
结果是它转到上一页…通常,当我单击“确定”时,它将保持在同一页上。如果我删除useRootNavigator行,我会出现一个大错误:
“处理手势时抛出以下断言:
查找停用小部件的祖先是不安全的
此时,小部件元素树的状态不再稳定
要在dispose()方法中安全地引用小部件的祖先,请通过在小部件的didChangeDependencies()方法中调用dependOnInheritedWidgetOfExactType()来保存对祖先的引用。”
在使用此软件包之前,我的代码是:
showDialog(
context: context,
builder: (BuildContext context){
return AlertDialog(
title: Text("Vous ne pouvez pas sélectionner plus de 5 numéros !!!"),
shape: RoundedRectangleBorder(borderRadius: BorderRadius.all(Radius.circular(10.0))),
actions: <Widget>[
FlatButton(
child: new Text("OK"),
onPressed: () {
Navigator.of(context).pop();
},
),
],
);
}
);
showDialog(
上下文:上下文,
生成器:(BuildContext上下文){
返回警报对话框(
标题:文本(“你的选择加上5个数字!!!”,
形状:RoundedRectangleBorder(borderRadius:borderRadius.all(Radius.circular(10.0)),
行动:[
扁平按钮(
子项:新文本(“确定”),
已按下:(){
Navigator.of(context.pop();
},
),
],
);
}
);
您不需要使用navigator,它将自行打包
btnOkOnPress: () {
// Navigator.pop(context); // commented line
},
您将在软件包的一部分中找到这一点。谢谢:)您能说一下Navigator.pop(上下文)到底是做什么的吗???因为我在testNavigator.pop(上下文)时,它会转到上一页;用于导航回上一个屏幕,但在此软件包中,它们称为Navigator.pop(context);在里面,这样我们就不用叫自己了。