有以下asynctask,我正在使用下载一些图像。除了第一个图像以外,它可以很好地工作,除非我做了像移动到下一个图像然后再回来的东西,这并不总是出现。imageview绘制问题与asynctask
public class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {
static ImageView _imageView=null;
public DownloadImageTask(ImageView ctl){
_imageView=ctl;
}
protected void onPostExecute(Bitmap result) {
_imageView.setImageBitmap(result);
}
...
}
我认为这可能与在后台线程更新UI的问题,所以我重新设计这个使用调用调用.setImageBitmap(UI线程上的方法的抽象类),但我仍然得到相同的行为 - 对除第一个图像以外的所有图像都适用,除非我移动到下一张图像并再次返回。
有没有办法在我设置图像后强制对imageview进行重绘?
不应该是一个问题围绕后台线程调用,因为onPostExecute应该在UI线程中执行。在Activity生命周期中,你从哪里调用AsyncTask? – kabuko