如何解决升级flutter后出现AlertDialog错误
我使用 AlertDialog 通知用户互联网可用性。在我使用命令 flutter upgrade 升级我的 flutter 之前,它工作正常。程序截图如下:
connectivitySubscription = Connectivity()
.onConnectivityChanged
.listen((ConnectivityResult connresult) {
if (connresult == ConnectivityResult.none) {
dialogshown = true;
showDialog(
context: context,barrierDismissible: false,builder: AlertDialog(
title: Text(
"Error",),content: Text(
"No Data Connection Available.",actions: <Widget>[
FlatButton(
onPressed: () => {
SystemChannels.platform.invokeMethod('SystemNavigator.pop'),},child: Text("Exit."),],);
} else if (_previousResult == ConnectivityResult.none) {
checkinternet().then((result) {
if (result == true) {
if (dialogshown == true) {
dialogshown = false;
Navigator.pop(context);
}
}
});
}
_previousResult = connresult;
});
错误在
builder: AlertDialog
showDialog 函数。在升级 flutter 之前,它是 child: AlertDialog 并且工作正常,升级后显示错误。 flutter 的快速修复建议使它成为“builder: AlertDialog”,但它仍然显示错误。错误是“无法将参数类型 'AlertDialog' 分配给参数类型 'Widget Function(BuildContext)'。”。在我的完整项目中,每个 FlatButton 和 RaisedButton 上也有 Strike through 线,带有警告消息“'FlatButton' 已弃用,不应使用。改用 TextButton”。
请帮我解决这个问题。如果我需要改用我之前的flutter版本,请告诉我该怎么做? 谢谢
解决方法
改变
builder: AlertDialog
到
builder: (_) => AlertDialog()
,
-
使用
builder: (_) => AlertDialog()
-
将代码中出现的任何
FlatButton
和RaisedButton
更改为TextButton
并根据需要设置属性。
您可以通过打开一个终端将 Flutter(在您的情况下并不真正推荐)降级到当前频道的最后一个活动版本,并且输入
flutter downgrade
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。