Cuando se carga mi aplicación, selecciono una representación JSON de 99 objetos.Pre-caché Imágenes para la categoría UIImageView de AFNetworking
Cada objeto tiene un campo 'image_url', que paso a AFNetworking's setImageWithURLRequest
.
Mis imágenes se cargan en un tableView, y en consecuencia, solo las primeras celdas hacen solicitudes para sus imágenes. No es hasta que me desplazo hacia abajo que se realizan las solicitudes de imágenes posteriores.
Una vez que despliegue el conjunto de datos inicial, me gustaría poder iniciar un proceso de fondo que se apaga y descarga los aproximadamente 95 objetos que no son visibles inicialmente, y almacenarlos en caché de tal manera que cuando se llama al setImageWithURLRequest
, ya tendrá una imagen almacenada en caché desde la que extraer.
AFImageCache es privado, así que no estoy seguro si esto es posible. Sé que podría guardar en caché con NSURLCache, pero luego tendría dos cachés aislados y aislados, y eso tampoco es ideal.
¿Mi única opción es no utilizar la categoría UIImageView de AFNetworking?
Estas respuestas me hacen pensar así:
iOS Caching images with AFImageCache doesn't seem to work
How to configure the cache when using AFNetworking's setImageWithURL
El almacenamiento en memoria caché de 95 imágenes para ram tendría una gran cantidad de ram. Si lo hace, no use la memoria caché incorporada, sino que cree una memoria caché de disco en el directorio de caché. –
Tengo exactamente el mismo problema. Estoy almacenando en caché las imágenes en el disco. Pero cuando intento cargarlos desde el caché, a veces no se encuentran. Hice la pregunta en http://stackoverflow.com/questions/12882639/how-should-i-pre-load-all-images-and-cache-them-using-afnetworking – Burak