Какой лучший способ для отображения миниатюр изображений на UIScrollview (загружается с сервера) - PullRequest
2 голосов
/ 28 марта 2011

Я хочу показать несколько изображений (в виде миниатюр) в UIScrollview (например, приложение «Фотографии»).Все изображения будут загружены с сервера.Чтобы отобразить, насколько мне известно, есть несколько альтернатив:

1) Создавая UIImageviews, а затем добавьте их как подпредставление в основном scrollview 2) Подклассом класса UIView, а затем нарисуйте на нем изображения 3)Класс CATiledLayer

Полагаю, 1-й вариант недостаточно хорош, так как это не лучший метод при загрузке большого количества изображений;и третий вариант больше подходит для больших изображений.Поскольку я буду получать только небольшие изображения, второй вариант кажется лучшим в моем случае.

Пожалуйста, предложите, какой вариант мне выбрать.Если возможно, предоставьте пример кода.

Заранее большое спасибо:)

Ответы [ 2 ]

1 голос
/ 28 марта 2011

Я выпустил бесплатную библиотеку, созданную специально для этой проблемы: HJCache. Мы использовали ее во многих приложениях, включая наше приложение Facebook для Facebook. Он асинхронно загружает, кэширует файлы, обменивается изображениями при повторении на экране (например, сообщения от одного и того же человека с одним и тем же эскизом профиля), автоматически управляет загрузкой правильного набора изображений в правильном порядке, когда пользователь просматривает большую таблицу изображений и прост в использовании благодаря дизайну «загрузите следующее изображение впереди» для полноэкранного просмотра фотографий.

http://www.markj.net/hjcache-iphone-image-cache/

1 голос
/ 28 марта 2011

Что вы подразумеваете под «[UIImageView] недостаточно хорош, так как он не оптимизирован»?Вы действительно думаете, что UIImageView не оптимизирован для отображения изображений?

Мой совет: выберите самое простое решение и посмотрите, подходит ли оно вашим потребностям.

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