Загрузка изображений асинхронно в просмотр таблицы - PullRequest
0 голосов
/ 31 января 2012

У меня есть несколько вопросов относительно загрузки изображений в tableviews;

Я использую ASIHTTPRequest.

1.) У меня есть таблица, и мне нужно загрузить в нее изображения. У меня есть изображения размером 100 КБ, 180 КБ, 450 КБ и 2 МБ. Я знаю, что эти изображения слишком велики, но я не могу это контролировать. Я вынужден загрузить эти изображения в виде таблицы. Когда я делаю это, он замедляет прокрутку и замедляет переключение между представлениями. Так как я могу предотвратить это? любое решение?

2.) В настоящее время я использую SDWebImage, я не удовлетворен этой библиотекой, потому что она замедляет прокрутку и т. Д. (Даже если я использую изображения размером менее 110 КБ) Мне нужна библиотека, которая может выполнять более быстрые действия?

Ответы [ 2 ]

1 голос
/ 31 января 2012

Возможно, вам придется уменьшить изображение до размера изображения в фоновом режиме, прежде чем отобразить его. Это определенно будет стоить вам много циклов ЦП заранее, но ускорит прокрутку. Я рекомендую каркас ImageIO, потому что у него нет проблем с работой в неосновных потоках.

0 голосов
/ 31 января 2012

Я не думаю, что SDWebImage замедляет прокрутку. SDWebImage загружает изображение в отдельном потоке, единственное, что он действительно делает в главном потоке, - это помещает изображение в UIImageView, и это должно быть сделано в главном потоке. Я использую SDWebImage в нескольких различных UITableViewCells, и мне удалось добиться плавной прокрутки.

2 МБ действительно велико - вы не сможете загрузить это изображение в UITableViewCell без какого-либо рывка. Дело в том, что для визуализации этого изображения UIImageView требуется некоторое время.

Будь я на вашем месте, я бы запустил ваше приложение с помощью инструмента Time Profiler и выяснил, сможете ли вы выяснить, какие строки кода работают дольше всего в вашем UITableView или UITableViewCells.

...