मैं छवियों को सूचियों में लोड करने के लिए एक छवि लोडर बना रहा हूं - इसलिए यह चिकनी होने के लिए, छवि को दृश्य में सेट करने के अलावा पृष्ठभूमि थ्रेड में सबकुछ चलाने की आवश्यकता है। समस्या यह है कि कोड बेलो में रननेबल कभी-कभी निष्पादित नहीं होता है। मैं पृष्ठभूमि धागे से 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();
}
});
}
किसी के पास कोई विचार है कि मैं क्या गलत कर रहा हूं?
मैंने View.post को हैंडलरपोस्ट के साथ बदल दिया और ऐसा लगता है कि अब मक्खन की तरह काम करता है। – martinpelant