2

所以我一直在尝试使用runOnUiThread()和 View 之类的方法。

发布以从不扩展 Activity的主类之外的类更新我的图像视图,并且我一直遇到同样的问题:

第一次运行很好,但是当我重新启动应用程序时,图像视图将不再更新。

我可以使用AsyncTask该类获取位图,然后使用该位图对其进行设置和图像视图吗?如果是这样,谁能给我举个例子?

4

2 回答 2

2

如果你像这样扩展 AsyncTask

类 ClassName 扩展 AsyncTask

您必须从 doInBackground() 返回一个位图,并且您将被覆盖 onPostExecute(Bitmap),它将在 UI 线程上运行,这意味着您可以将该位图设置为 ImageView。

于 2012-07-10T17:34:50.077 回答
0

只有runInBackground()AsyncTasks 的方法在worker thread. 其他方法在 UI 线程上调用,因此您可以使用它来调用对 UI 的更改。

您可以使用onPreExecute()for 像一个进度条开始。

正如它所说,您可以使用publishProgress()发布任务的进度,例如说您下载了多少百分比。

您可以使用onPostExecute()来设置您的视图,例如位图或您可能已下载的文本片段。

于 2012-07-10T17:35:57.780 回答