Xcode 6: xcassets para compatibilidad con imágenes universales

Actualmente trabajando en un proyecto universal SpriteKit. Estaré apoyando los siguientes dispositivos:

iPhone 4 / s, iPhone 5 / c / s, iPhone 6, iPhone 6+

iPad non-ret, iPad retina

introduzca la descripción de la imagen aquí

Estoy confundido en la parte del iPhone. Ya tengo 4 versiones para mi sprite de background para las 4 resoluciones de pantalla diferentes de los iPhones. ¿Pero a qué va?

Sé que 3x es para 6+, y creo que 5 / c / s va para Retina 4 2x, pero no sé dónde están los iPhone4 / s y 6. ¿Nadie sabe?

Nota al margen, cuando creo una image de lanzamiento dentro de mi file xcassets, me muestran estas opciones, que básicamente tienen todo el dispositivo que estoy soportando. Solo me pregunto por qué este no es el caso también al crear un set de imágenes introduzca la descripción de la imagen aquí

También, ¿cómo se acercan ustedes a crear imágenes / sprites para una aplicación universal? Ahora que el nuevo iPhone 6 y 6 más están apagados, tengo 2 resoluciones más para soportar, lo que sigue siendo confuso para mí, ya que todavía soy un principiante.

Esto es un poco confuso, así es como lo entiendo (esto es en reference a la image superior):

  • Las imágenes 1x son para el iPhone original a través de 3GS: dispositivos de resolución "estándar" (pantallas de 3,5 ")

  • Las imágenes 2x son para iPhone 4 y 4S (pantallas Retina de 3,5 ") y también se usan para iPhone 6.

  • Retina 4 2x son para iPhone 5 y 5s (pantallas Retina 4 ")

  • Las imágenes 3x son para el nuevo iPhone 6+ (pantalla 5.5 "super-Retina [3x])

Creo que el iPhone 6 (pantalla de 4,7 ") utilizará las imágenes Retina 4 2x, pero tendría que probarlo.

Nota al margen, cuando creo una image de lanzamiento dentro de mi file xcassets, me muestran estas opciones, que básicamente tienen todo el dispositivo que estoy soportando. Solo me pregunto por qué este no es el caso también al crear un set de imágenes

Si compara las dos imágenes, la inferior tiene todo lo superior, excepto por un gráfico de iPhone 1x. No necesita eso si solo está soportando iOS 7 y versiones posteriores, ya que iOS 7 no se ejecuta en dispositivos con formatting de teléfono que no sean Retina. Para ser honesto, no entiendo por qué la image superior tiene una opción gráfica de formulario de iPhone 1x, ¿tal vez porque marcó el recuadro "iPhone" en la barra lateral?

Además, ¿cómo se acercan ustedes a crear imágenes / sprites para una aplicación universal?

Para la mayoría de las imágenes que no son de pantalla completa (como un logotipo), realmente solo tiene 3 resoluciones para soportar: estándar (1x), Retina (2x) y iPhone 6+ (3x). Estas son simplemente diferentes calidad de imágenes, no son realmente diferentes tamaños. Entonces, si tiene una image de 10×10 en un dispositivo estándar, eso significaría que necesita una image de 20×20 en un dispositivo Retina y una image de 30×30 en un iPhone 6+. En todos los dispositivos, aparecerían como una image de 10×10.

Una gran herramienta que usé para administrar diferentes resoluciones de icons es iConify .

Los creo en el tamaño más alto que necesito (30×30 [@ 3x] para una image que quiero que sea 10×10 en un dispositivo), luego guardo como un png y networkingimensiono las copys a 20×20 [@ 2x] y 10×10 [estándar]. Una mejor solución sería crear y utilizar charts vectoriales , que cambiarían su tamaño a cualquier tamaño.

En image de lugar 1x con resolución 320 x 480.
En image de lugar 2x con resolución 640 x 960.
En Retina 4 2x image de lugar con resolución 640 x 1136.
en image de lugar 3x con resolución 1242 x 2208.

Las imágenes de Retina 4 2x se actualizarán a una resolución de 750 x 1334.
Las imágenes 3x se networkingucirán a una resolución de 1080 x 1920.

También puede visitar estos enlaces para ver imágenes de la pantalla de inicio:
http://www.paintcodeapp.com/news/iphone-6-screens-demified
http://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions

Para todas las demás imágenes, resolución y tamaño:
https://developer.apple.com/ios/human-interface-guidelines/graphics/launch-screen/ https://developer.apple.com/ios/human-interface-guidelines/graphics/image-size-and- resolución / https://developer.apple.com/ios/human-interface-guidelines/graphics/custom-icons/

Cómo usar Image.xcassets:
https://www.youtube.com/watch?v=_36Y6rDcKP0&list=PLXCowKcXAVgrCe2Lezv0acRf4adQLshv2

Espero que esto sea más útil.

Si tiene las imágenes de inicio en un file xcasset, puede hacer lo siguiente en Xcode 6.

Seleccione el elemento de image de inicio, select una resolución específica (1x, 2x, Retina 4, etc.) y abra el inspector de attributes (vea la image a continuación).

introduzca la descripción de la imagen aquí

Debajo de la sección "Imagen", tendrá un atributo "Tamaño esperado".

introduzca la descripción de la imagen aquí

Dentro de images.xcassets, puede agregar compatibilidad con diferentes dispositivos haciendo clic derecho como se muestra en el complemento

introduzca la descripción de la imagen aquí

Editar: Bueno, no parece funcionar cuando arrastro n imágenes sueltas a marcadores de position. Se ensucia como se muestra a continuación

introduzca la descripción de la imagen aquí

No sé por qué está actuando extraño en mi Xcode 6.4 sin embargo.

Edición n. ° 2:

Veo un error de manzana aquí. Puedo seleccionar 'Universal' junto con cualquier dispositivo con el button derecho, como puedes ver en la primera image de arriba. Pero a través de un inspector de attributes, puedo seleccionar correctamente dispositivos "universales" o específicos, como se muestra aquí

introduzca la descripción de la imagen aquí

Edición # 3:

En Xcode 7, el inspector de attributes ha cambiado y ahora ofrece la misma opción, como el clic derecho. Entonces, en lugar de dispositivos 'universales' o específicos, ahora ofrece seleccionar todos.

introduzca la descripción de la imagen aquí

Hay una herramienta: AVXCassets Generator con la que puede generar directamente el file XCAssets para todos sus icons e imágenes con solo un clic.

Espero que te guste.

introduzca la descripción de la imagen aquí