在异步任务运行时显示警报框并在任务完成时删除?

Posted

技术标签:

【中文标题】在异步任务运行时显示警报框并在任务完成时删除?【英文标题】:Make an alertbox appear when async task is running and remove when task is finished? 【发布时间】:2020-07-24 08:41:16 【问题描述】:

我正在开发一个移动应用程序,它将单词列表插入 SQLite 数据库,我使用异步任务将数据插入数据库,并在应用程序打开时将数据插入数据库,所以我想要的是显示警报带有消息的框。

我试过用这个,

*

protected void onProgressUpdate(Object[] values) 
 super.onProgressUpdate(values);
    builder.setCancelable(true);
    builder.setTitle("Title");
    builder.setMessage("Adding....");
    builder.show();

*

但这不会在我启动应用程序时出现。 我想让警报框显示“添加数据”,当异步任务完成时,我想隐藏警报框。 请帮我解决这个问题。

【问题讨论】:

【参考方案1】:

警报对话框适用于 ui 线程。您无法从后台线程显示它。如果您在执行任务之前或在创建任务和执行后显示警报对话框,那么您可以在任务执行完成并进入前台时关闭警报对话框。

【讨论】:

以上是关于在异步任务运行时显示警报框并在任务完成时删除?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 AFNetworking 3.0 在后台下载大文件并在会话完成所有任务时显示本地通知

尝试连接到服务器时带有异步任务的进度条

如何在 mvc 中启动任务并在任务完成时收到通知?

Flutter Widgets 之 FutureBuilder

与 kotlin 异步运行代码的最佳方法

并行运行两个异步任务并在 .NET 4.5 中收集结果