a vista de la galería de Android "tartamudea" con el adaptador de carga de imágenes diferid

Me gustaría crear un adaptador de carga diferido para usar con unGallery widget.

Es decirgetView() devuelve unImageView inmediatamente, y luego algún otro mecanismo llamará asincrónicamente a susetImageBitmap() método. Hice esto creando un "perezoso"ImageView que se extiendeImageView.

public class GalleryImageView extends ImageView {

    // ... other stuff here ...

    public void setImage(final Looper looper, final int position) {

    final Uri uri = looper.get(position);
    final String path = looper.sharePath(position);

    new Thread(new Runnable() {

        @Override
        public void run() {
            GalleryBitmap gbmp = new GalleryBitmap(context, uri, path);
            final Bitmap bmp = gbmp.getBitmap(); // all the work is here
            handler.post(new Runnable() {

                @Override
                public void run() {
                    if (GalleryImageView.this.getTag().equals(uri)) {
                        setImageBitmap(bmp);
                    }
                }
            });
        }
    }).start();
}

}

Cuando me desplazo lentamente en laGallery, la imagen central sigue apareciendo en el centro. Es difícil de explicar, exactamente, pero es realmente molesto. También probé el mismo enfoque para un adaptador giratorio y funciona perfectamente allí.

¿Algunas ideas

Respuestas a la pregunta(3)

Su respuesta a la pregunta