2011-01-03 10 views

Respuesta

7

Las carpetas en cualquier paquete de Xcode son "grupos". Es decir, no son directorios reales. Los archivos en esos grupos todavía se encuentran en la raíz del paquete.

Por lo tanto, tener dos (o más) archivos con el mismo nombre en el paquete de la aplicación es imposible.

Ver: http://majicjungle.com/blog/?p=123

El problema con Grupos:

La estructura de directorios se pierde cuando se copia en la aplicación para el iPhone, y así dentro de su paquete de aplicación es sólo un gran lista de todos sus recursos en el directorio base . Como resultado de esto, nombres de archivos duplicados se convierten en un problema. Si los archivos dentro de su estructura de directorio en el disco contienen el mismo nombre de archivo , el proceso de compilación silenciosamente arruina todo. Parece ser 'primero en ganar', con solo uno de los recursos que lo hace en el paquete de la aplicación . Por lo tanto, no es bueno si tiene paquetes de diferentes niveles cada que contienen un archivo diferente 'Terrain.png' .

Si mantiene la estructura de su directorio creando referencias de carpetas, esto elimina el problema de los nombres de archivos duplicados. Sin embargo, recuperar los archivos es el problema.

Lo que puede hacer es utilizar la clase NSBundle:

[[[NSBundle mainBundle]resourcePath]stringByAppendingPathComponent:@"path/to/file.jpg"] 
+0

ah, cuando agrego archivos al proyecto que pueda añadirlos usando "de forma recursiva crear grupos para todas las carpetas añadidos", y "crear referencias de carpeta para las cualquier carpeta agregada ". Si uso la segunda opción, puedo tener dos archivos con el mismo nombre. Me pregunto si puedo usar "imageNamed" en archivos que se agregaron de esa manera – eugene

+0

Ver mi adición. –

+0

sigue leyéndolo, pero parece que es exactamente lo que necesitaba – eugene

Cuestiones relacionadas