Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
sarTemd174
57 / 57 / 1
Регистрация: 03.01.2012
Сообщений: 136
#1

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

01.08.2015, 05:35. Просмотров 410. Ответов 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 (ленивый) (Программирование Android):

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

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

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

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

Загрузка изображений на сервер - Программирование Android
Здравствуйте. Пытаюсь загрузить изображение на свой сервер в интернете. Нашел вот такой пример: import java.io.DataInputStream; import...

Загрузка изображений с RSS ленты - Программирование Android
Есть Reader RSS ленты, который преобразует это все в ListView. Как мне сделать так, чтобы вдобавок еще грузились картинки с этой же ленты?...

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

Загрузка изображений в TextView из HTML - Программирование Android
Здравствуйте ) Достаточно частый вопрос. Но все усложняется тем, что это все находится в TextView. Имеется код: arrayList...

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

Загрузка изображений из стандартной галереи в GridLayout - Программирование Android
Всем привет! Нужно достать фоточки с телефона и красиво отобразить в GridLayout, подгружая фоточки асинхронно. но то ли руки кривые, то ли...

Загрузка ListView после AsyncTask - Программирование Android
В классе, который расшияет AsyncTask, занружаю данные из JSON и сохраняю в бд. При первом запуске апликации, список не выдаёт какого либо...


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

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

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