Вот пример того, как это сделать:
public Void doInBackground(String... urls) {
int len = urls.length;
for(int i = 0; i < len; ++i) {
Bitmap b = downloadImage(urls[i]);
publishProgress(new Object[] {b, i});
}
return null;
}
public void onProgressUpdate(Object... values) {
Bitmap b = (Bitmap)values[0];
Integer bitmapIndex = (Integer)values[1];
//replace the image at location "bitmapIndex" in your collection of images with "b"
//update your adapter via notifyDataSetChanged
}
Используйте метод AsyncTask
onProgressUpdate
для публикации прогресса внутри doInBackground
. Этот метод (onProgressUpdate
) выполняется в потоке пользовательского интерфейса.