android - Flutter Android 在没有 onPress 的情况下以编程方式关闭/关闭 ProgressHUD 对话框
问题描述
我刚进入并学习 Android 上的 Flutter。我想问一下 ProgressHUD 对话框。
如何以编程方式关闭/关闭 ProgressHUD 对话框?因为在文档中它使用 onPress 来关闭对话框。我想要的是在没有 onPress 的情况下以编程方式关闭或关闭对话框。
谢谢你。
ProgressHUD对话框链接的库/包如下:
https://pub.dartlang.org/packages/progress_hud#-readme-tab-
下面的代码是启动对话框:
bool _loading = true;
@override
void initState() {
super.initState();
_progressHUD = new ProgressHUD(
backgroundColor: Colors.black12,
color: Colors.white,
containerColor: Colors.blue,
borderRadius: 5.0,
text: 'Loading...',
);
//If I put in this line, there have an error,
//the state is null, the dismiss() function called on null.
_progressHUD.state.dismiss();
}
你可以看看我是否把_progressHUD.state.dismiss();
in 函数initState()
有一个错误,即 state 为 null,dismiss() 函数在 null 引用上调用。
下面的代码用于关闭对话框:
_progressHUD.state.dismiss();
解决方案
当小部件未完全构建时,您将在初始化状态下取消进度。因此,显示状态空错误。要在初始化状态或状态未完全设置时使用它,您可以使用 postframe 回调。
WidgetsBinding.instance.addPostFrameCallback((_) {
_progressHUD.state.dismiss();
});
推荐阅读
- databricks - 上传后未找到 Databricks DBFS 文件
- android - 如何使用yandex_kit地图实现一些用户的地理定位?
- php - 使 Laravel 8 slug 变量不区分大小写
- business-objects - SAP BO 发布以前运行良好,而发布没有改变,怎么会失败?
- mysql - How to order result according to another table in mysql
- r - 有没有一种方法可以使用 lattice 包函数 bwplot() 重现箱线图
- android - 从图层列表项中删除填充
- php - 将数据和图像文件保存到数据库 Laravel 中失败
- java - spring-data-elasticsearch 自定义日期格式错误
- firebase-authentication - 下一个js和firebase认证登录页面问题