2011-03-08 156 views
-1

我搜索并找到了什么看起来像我有确切的问题(http://stackoverflow.com/questions/4369537/update-ui-from-thread)。不幸的是,我仍然无法得到这个工作。从另一个线程更新UI(progressDialog)

我在我的布局上有一个ImageView。当按下按钮时,会创建并显示ProgressDialog。当线程处理数据时,它会在UI中的处理程序上调用incrementProgressBy()方法。在该处理程序中,我使用setImageBitmap()更新ImageView,然后使其失效。它从不更新。接下来,我尝试从进度条的线程调用ImageView.postInvalidate()。它仍然不会更新,直到进度条完成并被删除。

任何想法?

+0

听起来就像你正在做正确的处理程序。由于setImageBitmap()已经做到了,所以没有必要使位图无效。 – BitBank 2011-03-08 14:55:47

+1

你应该发布你的代码。当您显示ProgressDialog时,您也知道您的活动已暂停。也许这是原因?你可以尝试所有相同的没有ProgressDialog。 – Fedor 2011-03-08 15:00:33

+0

我真的不能没有对话。实质上,用户使用应用程序拍摄照片并输入信息。这些照片稍后会上传到Web服务。进度条表示已经有多少照片已经存在,剩下多少照片。由于进度对话框并没有覆盖整个屏幕,我认为这将是很好的显示在后台发送的图像。 – Paul 2011-03-08 21:57:39

回答

0

这里的解决方案是使用AsyncTask。它能够通过处理程序与UI进行通信。