Кэш приложения для работы с фотографиями (Nimbus)
В образце приложения Network Photo от Nimbus, когда я возвращаюсь к таблице (чтобы выбрать, куда я хочу загрузить фотографии с Facebook или Dribbble), предыдущие фотографии, которые я видел и находились в кеше, удаляются из него. Есть ли способ предотвратить это?
Например:
- Вношу в альбом А, скачал 50 фото в кеш.
- Я вхожу в альбом B, я скачал 50/60 фотографий.
- Когда я снова вхожу в альбом A, я хочу использовать те, которые у меня есть в кеше.
Мой сценарий: несколько проектов (источников данных), когда я перехожу от одного к другому, если я уже был там, я хочу, чтобы он использовал мой внутренний кэш.
Самое главное: возможно ли сохранить его для внутренней памяти iPhone?
Благодарю.
1 ответ
Фотографии удаляются из памяти, когда вы покидаете фотоконтроллер, потому что именно фотоконтроллер создает кэши изображений для фотографий. Если вы хотите сохранить фотографии в памяти вне рамок контроллера, вам нужно создать глобальный кэш изображений в памяти, в котором вы храните фотографии.
Что касается того, можете ли вы сохранить фотографии на диск, я полагаю, что в примерах используется ASIHTTPRequest, который использует дисковый кеш для изображений. Это автоматически кэширует образы на диск, так что даже если они будут удалены из памяти, они не будут снова загружены из сети. Это все еще может привести к тому, что изображения загружаются за секунду, потому что загрузка больших фотографий с диска не такая быстрая, как их использование из кэша в памяти.