ios xcode xcode5 xcasset

ios - ¿Cómo puedo indicar a Asset Catalog(.xcassets) que use la misma imagen para múltiples pozos de imagen?



xcode xcode5 (6)

Actualicé a cocopods 0.37 y el problema fue resuelto. Si usaste cocópodos, entonces probablemente fue su culpa.

Tenemos varios proyectos de aplicaciones Xcode, y los estamos actualizando todos para usar las últimas funciones de Xcode 5, incluidos los Catálogos de Activos ( .xcassets ).

Todas nuestras imágenes default (inicio) ya incluyen espacios para la barra de estado, y queremos usar estas imágenes para las imágenes de lanzamiento de iOS 5,6 e iOS 7 . Además, no queremos incluir varias copias de la misma imagen en el proyecto.

Uno de nuestros proyectos está configurado correctamente para usar las mismas imágenes para estos dos conjuntos de imágenes. Sin embargo, esta configuración fue más por accidente.

Además de editar el archivo Contents.json directamente (que es una solución alternativa de último recurso si es necesario), ¿cómo podemos hacerlo utilizando el editor de Xcode GUI para Asset Catalog?

Lo que ya hemos intentado

1) Arrastrando y soltando la imagen a una posición diferente ... simplemente mueve la imagen al otro conjunto

2) Al arrastrar y soltar el mismo archivo desde Finder al Catálogo de Activos ... se crea una nueva copia de la imagen.

3) Arrastrando y soltando la imagen con la option ( alt ) presionada ... crea una nueva copia de la imagen


Creo que he encontrado la solución: simplemente arrastre las imágenes predeterminadas que desea utilizar para iOS 6 y 7 en el cubo de iOS 6. Recibirá una advertencia acerca de no tener una imagen solo para iOS7, pero la compilación funciona en el simulato de iOS7, un iPhone iOS7 y un iPad iOS7.


En mi caso estoy usando vainas de cacao. El script Pods-resources.sh las vainas de cacao causó de alguna manera el problema. La eliminación de las partes de activos de la secuencia de comandos resolvió el problema.

Asegúrese de limpiar su proyecto y eliminar la carpeta de datos derivados.

Las partes a borrar se pueden encontrar aquí:

https://.com/a/21309102/832111


Puede hacer clic derecho en el archivo .xcassets y elegir ''Mostrar en Finder''. Vaya a la carpeta ''Image.launchimage'' y abra el archivo Contents.json en un editor de texto. Aquí puede ver que las ranuras no asignadas no contienen un "nombre de archivo". Puedes añadir esto manualmente. Por ejemplo, cambie lo siguiente:

{ "orientation" : "landscape", "idiom" : "ipad", "extent" : "full-screen", "minimum-system-version" : "7.0", "scale" : "2x" }

Dentro:

{ "orientation" : "landscape", "idiom" : "ipad", "extent" : "full-screen", "minimum-system-version" : "7.0", "filename" : "Default-Landscape@2x~ipad.png", "scale" : "2x" }

Ahora guarde el archivo, y listo!


Resolví esto eliminando antiguos xcassets y agregue nuevos xcassets usando No usar catálogos de aplicaciones


Resolví esto utilizando scripts de compilación para copiar el archivo xcassets correcto para cada destino. Detalles here