Esto no es realmente una pregunta sobre cómo abordar un problema específico sino más bien una solicitud para que se apunte en la dirección correcta.UIImageView vs UIView w/Image - efficiency
Estoy haciendo una aplicación donde estoy cargando varias imágenes (guardadas como JPG) en una pantalla al mismo tiempo y esto tiene que ser así, no puedo descargar ninguna de ellas porque todas están siendo mostrado de una vez
He intentado cargar 30 imágenes a aproximadamente 800px * 600px de resolución pensando ingenuamente que solo carga el tamaño 'comprimido' de las imágenes en la memoria (esto es aproximadamente 200 KB) - ¿entonces un total de 6 MB? Por supuesto, varias advertencias de memoria más tarde, me di cuenta de lo estúpido que era. Así que ahora los vuelvo a tamaño de aproximadamente 400px * 300px cada uno y mi iPhone 4S apenas hace frente a los requisitos de memoria.
Originalmente utilicé UiView, donde en el drawRect dibujé una imagen dibujada personalizada, pero cambiar a usar un UIImageView mejoró la situación dramáticamente. La aplicación es mucho más rápida y receptiva. También encontré que apagar la rasterización en mi capa suponía una gran diferencia en el rendimiento.
Este tipo de 'descubrimientos' me han tomado horas para resolverse y lo que me preguntaba era si hay patrones de diseño o recursos particulares que pueda usar para cargar mis imágenes a la pantalla de la manera más eficiente posible; principalmente con respecto al uso de la menor cantidad de memoria posible, ¿existen buenas reglas generales? ¿Por qué usar UIImageView vs UiView w/image hace una gran diferencia?
Estaría muy agradecido si alguien pudiera ayudar.
Gracias.
Gracias por los enlaces - que eran muy útiles. – Vazzyb
+1 por sugerir algunos videos de Apple (¡sobre todo porque la interfaz de Apple para buscar y ver esos videos es terrible!) –
@KevinZych ¿Alguna vez ha utilizado [asciiwwdc.com] (http://asciiwwdc.com)? – Honey