Вы можете попробовать использовать мою платформу lazy-drawables (лицензию GPL v3):
https://github.com/rtyley/lazy-drawables
- к сожалению, она еще не совсем готова к производству, носреди вещей, которые он пытается обработать:
- фоновая (не-UI-нить) загрузка ресурсов изображения
- эффективное кэширование масштабированных растровых изображений - для варианта использования, в котором вы находитесьзагружая одно большое изображение, и я хочу показать его сотни раз в виде значка меньшего размера в виде списка или что-то в этом роде
- прозрачность использования, под которой я подразумеваю ...
... как только у вас настроен ленивый отрисовываемый сеанс, заполнить представление изображения так же просто, как:
Drawable avatarDrawable = imageSession.get(someUserIdentifier); // doesn't block
imageView.setImageDrawable(avatarDrawable);
Вы не заботитесь , что он может иметь сразувернул вам обычное растровое изображение или, возможно, породил асинхронную задачу и возвратил нарисованный заполнитель - этот объект обновится сам и его ImageView хоста, когда асинхронная задача завершится.
В любом случае, это теория.Кажется, что-то вроде работает, но иногда это самопроизвольное обновление пользовательского интерфейса не происходит ... не знаю почему: -}