2012-09-24 14 views
19

He creado una biblioteca estática y un paquete de recursos para reutilizar código y activos en varios proyectos.¿Por qué el paquete de recursos copia .png como imágenes .tiff?

Dentro de la biblioteca estática, tengo una clase gerente cuyo único propósito es crear otra UIViewControllers, cuyos puntos de vista son creados a partir .xib archivos (utilizando el método común initWithNibName:bundle:).

Cuando creo la vista en Interface Builder, las imágenes se muestran correctamente. Sin embargo, cuando ejecuto la aplicación en el simulador, me sale este error:

Could not load the "<image_name.png>" image referenced from a nib in the 
    bundle with identifier "com.<my_company>.<app_identifer>" 

Después de horas de molienda, que finalmente inspeccionó el paquete de recursos, y encontraron que los archivos .png no estaban en ella! En su lugar, .tiff archivos del mismo nombre (con exclusión de las versiones @ 2x) estaban allí en su lugar.

Todas las imágenes están incluidas en la fase de compilación del paquete en copian los recursos del paquete, y he usado las imágenes en otros proyectos de iOS (para que no estén dañadas).

¿Alguien más ha experimentado esto? ¿Es seguro asumir que las imágenes siempre se agregarán al paquete como .tiff? (Y si es así, ¿es seguro cambiar simplemente el nombre de la imagen en el constructor de interfaz a .tiff?) ¿O estoy haciendo algo incorrecto aquí?

Gracias por su ayuda con anticipación.

+0

Tifffffff ...... –

+1

Tal vez este enlace sería de alguna ayuda para usted :) http://stackoverflow.com/questions/12244494/image- resources-for-ios – IronManGill

+0

@Gill Este enlace definitivamente ayuda. Si lo agrega como respuesta, lo aceptaré para que pueda obtener crédito por él. Gracias. –

Respuesta

21

Para el problema de los paquetes de recursos, consulte este enlace ya que tiene un par de consultas similares.

Conversion Resource bundle

Dime cuál es la respuesta realmente le ayudó a resolver este problema. Gracias.

+6

La segunda respuesta y el comentario sobre la tercera respuesta realmente me ayudaron a resolver este problema. Básicamente, debido a que los paquetes se crean en iOS usando un "hack" (modificando un paquete de Mac OSX), algunas configuraciones deben cambiarse para que todo funcione; en este caso, se cambió la opción "combinar ilustraciones de alta resolución" a " No". Gracias Gill! –

+0

Gr8 .... tengo mi problema resuelto 2 ... gracias por publicar la pregunta !!! : D – IronManGill

+0

Impresionante. ¿Cuándo obtendremos un recurso de paquete legítimo para iOS? – MattD

14

Esto resolvió mi problema

In your bundle target Go to,

Build Settings > COMBINE_HIDPI_IMAGES and set to NO

+0

Impresionante, gracias – Chahal

Cuestiones relacionadas