Показать изображения асинхронно в UITableView с сервера в iPhone - PullRequest
0 голосов
/ 29 декабря 2011

Когда я пытаюсь получить изображения в UITableView, используя NSURLUIImage image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://mysite.com/mobile/abc.jpg]]];мое приложение зависает, пока изображения не загружены.Также, когда я прокручиваю таблицу, она снова получает изображения с сервера и прокручивает на некоторое время.Я знаю, что это происходит из-за синхронной загрузки изображений с сервера.Есть ли какое-либо решение, чтобы я мог асинхронно загрузить изображение с сервера и сохранить его локально или в кэш-памяти, чтобы при прокрутке таблицы он не получал изображения снова с сервера.

Спасибо

Ответы [ 2 ]

2 голосов
/ 29 декабря 2011

Проверить EGOImageLoading от enormego. Работает так же, как UIImage (и кеширует изображения), но позволяет асинхронно загружаться из HTTP.

0 голосов
/ 29 декабря 2011

Вы можете создать свой собственный класс, который использует NSURLConnection, и это различные асинхронные методы для загрузки ваших изображений в фоновом режиме, а затем обратного вызова для отображения его в ячейке.

Однако есть несколько превосходных библиотек, которые делают именно то, что вы описали. HJCache - это тот, который я использовал и рекомендую для этой единственной цели

...