java - Toast 和 ProgressDialog 均不出现

标签 java android progressdialog toast

我想要做的是向用户提供有关后台执行的工作和计算的进度信息(例如“登录”,“检索文档”,“分析文档”等)。

所发生的只是艺术作品的展示,并且只有在所有作品完成之后。我做错了什么,实现这个的正常方法是什么?

下面是说明该问题的示例代码。在循环完成之前,Toast 和 ProgressDialog 都不会显示:

ProgressDialog.show(this, "Working", "Performing calculation");

CharSequence text = "Performing calculation"; 
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(this, text, duration); 
toast.show();

for(int i = 0; i < 5000; i++) {
     Log.d("Debug", Integer.toString(i)); 
}

任何方向正确的观点都会受到赞赏。

最佳答案

您所描述的场景,您有一个后台进程,并且您想要向用户更新进度,应该使用 AsyncTask 来处理,其中您有 doInBackground()onProgressUpdate()

关于java - Toast 和 ProgressDialog 均不出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11072143/

相关文章:

java - 如何用java中的数组制作图表?

java - 通过 SSL 的 SOAP 网络服务连接

java - 使用 scala 在 saxonica 9 EE 上进行模式感知 XSLT 转换

android - AsyncTask 中未显示 ProgressDialog

java - 在 for 循环中创建和链接 LinkedList

java - 收到错误并重新订阅

android - 将 ComposeView 添加到 PopupWindow 的 contentView 崩溃

android - ionic : first loading of my android application is abnormally slow

android - 如何使用 videoview 流畅地播放来自 url 的视频?

android - 开始新 Activity 时打开进度对话框