He visto algunos artículos y debates como uno aquí y aquí sobre las resoluciones de imagen que los nuevos iPhone utilizarán imágenes @ 3x para mostrar. ¿Es verdad?
Entonces, ¿significa que tendremos que mantener tres imágenes? Digamos, por ejemplo, que tengo una imagen de 50 X 50, ¿tendré que mantener 3 imágenes para optimizar el aspecto de los nuevos iPhone?
- Normal (50 X 50)
- @ 2x - Retina (100 X 100)
- @ 3x - Retina HD (150 X 150)
¿O los nuevos teléfonos usarán imágenes @ 2x solamente y no hay nada como @ 3x?
Lo he probado haciendo un proyecto de muestra y todos los simuladores parecen usar imágenes @ 3x, esto es confuso.
Editar
Aquí hay más información
- 3GS (163 ppi, así que use Normal)
- 4, 4s, 5 y 5s (326 ppi, así que usamos @ 2x)
- 6 (326 ppi, por lo que parece que usará @ 2x)
- 6 plus (401 ppi aquí yace la confusión)
Editar
Basado en las respuestas dadas por Tsob y nitin, agregué imágenes @ 3x a mi proyecto.
Edición informativa
Veo que pocos usuarios están confundidos acerca de por qué el iPhone 6 usa imágenes @ 2x a pesar de que tiene una resolución más alta, la razón es
El iPhone 6 puede tener una resolución diferente pero tiene la misma densidad de pulgada por píxel (PPI)
- La resolución se refiere a un número absoluto de píxeles.
- La densidad (también conocida como píxeles por pulgada - PPI) se refiere a un número relativo de píxeles por pulgada, que es el mismo en el caso del iPhone 6 y los iPhone anteriores, pero diferente en el iPhone 6 plus.
Mira más sobre esto aquí en este hilo
Por lo tanto, el iPhone 6 usa una imagen @ 2x igual que los iPhones 4, 5 y 5S, ya que tiene el mismo PPI y el iPhone 6 plus usa @ 3x.
fuente
Respuestas:
Intenté en un proyecto de muestra usar imágenes estándar, @ 2x y @ 3x, y el simulador de iPhone 6+ usa la imagen @ 3x. Por lo tanto, parece que hay que hacer @ 3x imágenes (si el simulador realmente replica el comportamiento del dispositivo). Pero lo extraño es que todos los dispositivos (simuladores) parecen usar esta imagen @ 3x cuando está en la estructura del proyecto, iPhone 4S / iPhone 5 también.
La falta de comunicación de Apple en una estructura potencial @ 3x, mientras piden a los desarrolladores que publiquen sus aplicaciones iOS8 es bastante confusa, especialmente cuando se ven esos resultados en el simulador.
** Editar desde el sitio web de Apple **: También encontré esto en la sección "Novedades en iOS 8" en el espacio para desarrolladores de Apple:
Aún no entiendo por qué todos los dispositivos parecen cargar el @ 3x. ¿Quizás es porque estoy usando archivos normales y no xcassets? Lo intentare pronto.
Editar después de más pruebas: Ok, parece que iOS8 tiene una charla en esto. Al probar en un simulador de iOS 7.1 iPhone 5, utiliza correctamente la imagen @ 2x. Pero cuando se inicia lo mismo en iOS 8, utiliza @ 3x en iPhone 5. Sin embargo, no estoy seguro de si es un comportamiento deseado o un error / error en iOS8 GM o simuladores en Xcode 6.
fuente
ACTUALIZAR:
Nuevo enlace para el tamaño de la imagen de los iconos por apple.
https://developer.apple.com/ios/human-interface-guidelines/graphics/image-size-and-resolution/
Sí, es cierto aquí, es Apple proporciona documentación oficial sobre el tamaño de los íconos o imágenes
tienes que configurar imágenes para iPhone6 y iPhone6 +
Para iPhone 6:
Para iPhone 6 Plus:
Para obtener más información sobre las imágenes y su resolución, esta es la mejor publicación útil
Para configurar el tamaño de las imágenes para los controles, puede configurar 1x @ 2x y @ 3x de la siguiente manera:
fuente
Cree diferentes versiones de una imagen en su catálogo de activos de modo que la imagen misma le diga qué versión es:
Ahora ejecute la aplicación en cada simulador a su vez. Verá que la imagen 3x solo se usa en el iPhone 6 Plus.
Lo mismo es cierto si las imágenes se han extraído de la aplicación paquete utilizando sus nombres (por ejemplo one.png , [email protected] y [email protected] ) llamando
imageNamed:
y asignando en una vista de la imagen.(Sin embargo, hay una diferencia si asigna la imagen a una vista de imagen en Interface Builder: la versión 2x se ignora en los dispositivos de doble resolución. Esto es presumiblemente un error, aparentemente un error
pathForResource:ofType:
).fuente
iOS siempre intentará tomar la mejor imagen, pero recurrirá a otras opciones ... así que si solo tiene imágenes normales en la aplicación y necesita imágenes @ 2x, usará las imágenes normales.
si solo coloca @ 2x en el proyecto y abre la aplicación en un dispositivo normal, reducirá las imágenes para mostrarlas.
si apunta a dispositivos ios7 y ios8 y desea la mejor calidad, necesitaría @ 2x y @ 3x para teléfono y normal y @ 2x para activos de ipad, ya que no queda ningún teléfono que no sea retina ni ipad @ 3x.
tal vez sea mejor crear los activos en la aplicación a partir de gráficos vectoriales ... consulte http://mattgemmell.com/using-pdf-images-in-ios-apps/
fuente