2

我正在执行首先显示默认图像的 GridView 活动,然后我为 netowrk 任务启动一个新线程以从数据库下载图像,我希望在线程完成后,GridView 将自动刷新网格中的图像。

从这个问题我得到了以下代码:

ImageAdapter adapt = (ImageAdapter)gridView.getAdapter();
adapt.setBitmap(bitmaps);
adapt.notifyDataSetChanged();

更新网格的适配器。我在 onResume() 方法中执行了这 3 行,但是在线程完成后,我需要以某种方式调用 onResume() 方法(通过暂停活动或类似的东西)。

现在,如果我要移动到另一个活动(例如其中一个网格图像),然后按后退按钮,我可以看到我刚刚从数据库下载的网格视图图像。(因为它调用 onPause() 方法,然后调用 onResume() )

有没有人有解决这个问题的方法?

谢谢

编辑:线程正在通过 AsyncTask 运行

4

1 回答 1

0

线程完成后,我需要以某种方式调用 onResume() 方法(通过暂停活动或类似的东西)。

与其强行调用,不如onResume()将这三行移到一个新方法中,调用它refreshAdapter()。然后调用refreshAdapter()里面onResume()和任何地方使用你想刷新的Adapter。

于 2013-01-17T16:53:04.473 回答