8
我正在製作一個用於將圖像加載到列表的圖像加載器 - 因此爲了使圖像平滑,除了將圖像設置爲視圖之外,一切都需要在後臺線程中運行。 問題是,下面的代碼中的Runnable有時不會被執行。 我從後臺線程調用setImage方法。View.post()未被調用?
protected void setImage(final ImageView img, final Bitmap bm, String hash) {
img.setTag(TAG_RESPONSE, hash);
Log.v(TAG, "setting image bitmap1");
//TODO: here is the bug - sometimes the runnable below is not called
img.post(new Runnable() {
@Override
public void run() {
Log.v(TAG, "setting image bitmap2");
img.setImageBitmap(bm);
img.invalidate();
}
});
}
任何人有任何想法我做錯了什麼?
我用Handler.post替換了View.post,它現在似乎像黃油一樣工作。 – martinpelant