使用AsyncTask在onPostExecute中设置setIndeterminateDrawable()?

时间:2014-01-23 10:54:05

标签: android android-asynctask progressdialog

我正在使用AsyncTask ProgressDialog来显示一些消息。处理时它有一个图像而不是旋转的圆圈。我在onPreExecute中将其设置为: -

Drawable myIconStart = getResources().getDrawable(R.drawable.imagestart);
this.dialog.setIndeterminate(true);
this.dialog.setIndeterminateDrawable(myIconStart); 
this.dialog.setMessage("Processing… please wait for confirmation");

现在,当工作完成后,在onPostExecute中,我将其设置为: -

Drawable myIconDone = getResources().getDrawable(R.drawable.imagedone);
            this.dialog.setIndeterminate(true);
            this.dialog.setIndeterminateDrawable(myIconDone);
            this.dialog.setMessage("Your Reservation has been confirmed");

但是,没有设置onPostExecute的第二个图像。出现第一张图像然后消失,第二张图像显示为空白。你能告诉我我做错了什么/我应该做什么吗?

1 个答案:

答案 0 :(得分:2)

看起来像不确定的drawable无法真正被替换。

根据您的要求,请考虑编写一个自定义对话框,其中的布局包含ProgressBarImageView表示已完成图标,TextView表示邮件。更改状态时切换图标和进度条的可见性。