Как эффективно получать изображения для каждого UiTableViewCell? - PullRequest
0 голосов
/ 19 апреля 2011

Я получаю и анализирую JSON из Интернета в моем приложении-делегате. В JSON есть ссылки на изображения, которые должны отображаться в ячейках таблицы (1 изображение на ячейку). Если я получаю изображения в методе cellForRowAtIndexPath, загрузка всего представления занимает довольно много времени. Я использую этот код в cellForRowAtIndexPath:

NSURL *url = [NSURL URLWithString:imageUrl];  
NSData *data = [NSData dataWithContentsOfURL:url];  
cell.imageView.image = [UIImage imageWithData:data]; 

Как мне получить эти изображения, не замедляя запуск приложения (куда я должен поместить свой код)? Я прочитал несколько вещей о NSOperation, это правильный путь?

Tnx.

Ответы [ 2 ]

0 голосов
/ 19 апреля 2011

Создать класс для загрузки изображений. После загрузки изображения вы можете реализовать метод делегата. В методе Delegate перезагрузите ячейку с соответствующими изображениями.

0 голосов
/ 19 апреля 2011

вы можете реализовать ленивую загрузку, попробуйте это http://kshitizghimire.com.np/lazy-loading-custom-uitableviewcell/

или можете проверить пример яблока

http://developer.apple.com/library/ios/#samplecode/LazyTableImages/Introduction/Intro.html#//apple_ref/doc/uid/DTS40009394 удачи

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...