Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
sarTemd174
58 / 58 / 15
Регистрация: 03.01.2012
Сообщений: 136
#1

Асинхронная загрузка изображений в ListView (ленивый)

01.08.2015, 05:35. Просмотров 491. Ответов 0

Здравствуйте, есть такая схема:

Объект User с полями:

1) id (Long)
2) username (string)
3) profile_photo_id (int)
4) profile_photo_path (String)

Поле profile_photo_path по умолчанию пустое, profile_photo_id - id фото на сервере. (Если id=0, у пользователя нет фото на сервере)

Есть функция DownloadFile(int id), которая асинхронно скачивает с сервера файл по указанному айди и возвращает ответ PhotoDownloaded в котором указывается только путь до фото в кэше.

Допустим есть пользователь Петя с полями:
1) 9
2) petya
3) 14
4)

Я выполняю DownloadFile(14) и скачиваю фото с сервера, объект Петя автоматически изменился и изменилось его поле profile_photo_path с пустого на адрес скаченного файла в кэше.

Теперь объект Петя стал таким:
1) 9
2) petya
3) 14
4) cache/fasjidfjiwas.jpg

Теперь главный вопрос:

В Listview мне нужно динамически подгрузить фотографии пользователей, но как сделать это я не понимаю.

В голове я себе всю эту схему так представляю.
Допустим:
Я беру 10 объектов типо User с сервера. У всех поле profile_photo_path изначально пустое.
Я загружаю первый объект в адаптер ListView, проверяю пустое ли поле photo_path у этого объекта, и если пустое то делаю асинхронный запрос DownloadFile с указанным айди. Затем broadcastreciever'ом слушаю когда пришло событие о том, что файл скачался, мне нужно обновить текущий объект. Вроде бы все понятно, но как я могу запомнить чье фото скачалось, если в событии PhotoDownloaded я получаю только путь самого файла?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.08.2015, 05:35
Ответы с готовыми решениями:

Асинхронная загрузка элементов в listview
Столкнулся с такой проблемой, что у меня есть listview, в который с сайта...

Загрузка изображений из сети в ListView
Здравствуйте. Имеется файл в JSON формате. В нем дан массив объектов, каждый...

Загрузка изображений
Здравствуйте. Есть база изображений, например на web сервере, хостинге или соц...

Загрузка изображений на сервер
Здравствуйте. Пытаюсь загрузить изображение на свой сервер в интернете. Нашел...

Загрузка изображений из галлереи
Как реализовать загрузку изображений из галереи при нажатии на кнопку? (Андроид...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.08.2015, 05:35

Загрузка изображений в RecyclerView
Здравствуйте, каким образом можно динамически загружать картинки в RecyclerView...

Динамическая загрузка в ListView
Добрый день ув. Программисты. 3й день в безуспешных поисках. Точнее поиски...

Загрузка изображений из галереи в GridView
Мне нужно, чтобы при создании активити в GridView загружались все изображения,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru