2
我在做GridView活动,首先显示默认图像,然后我开始一个新的线程netowrk任务从数据库下载图像,我希望线程完成后,GridView会自动刷新网格中的图像。如何刷新android GridView
from this question我把下面的代码:
ImageAdapter adapt = (ImageAdapter)gridView.getAdapter();
adapt.setBitmap(bitmaps);
adapt.notifyDataSetChanged();
其更新网格的适配器。 我在onResume()方法中做了这3行,但在线程完成后,我需要以某种方式调用onResume()方法(通过暂停活动或somthing simillar)。
现在,如果我移动到另一个活动(如网格图像之一),然后按后退按钮,我可以看到我刚从数据库下载的网格视图图像。 (因为它调用onPause()方法,然后onResume())
Doe的任何人都可以解决这个问题吗?
感谢
编辑: 的线程是线程结束后通过的AsyncTask
它不起作用。 但问题是,我使用adapt.notifyDataSetChanged();它从第二个线程执行,它不能更新UI元素。 并且此方法正在处理UI。 –
@NoamMizrachi使用runOnUiThread从线程中进行UI更改 –
您是使用真正的线程还是AsyncTask?如果你使用线程,你可以创建一个简单的回调。 – Sam