ios - todas - Catálogos de activos en paquetes de recursos
texturas para minecraft pe realistas (3)
Hay un truco para hacer que los catálogos de activos funcionen con paquetes: establezca el objetivo de implementación del paquete de recursos en 6.1 (o más abajo). Los catálogos de activos solo existen desde la versión 7.0, por lo que Xcode no creará realmente un archivo .car
(catálogo compilado de activos), sino que copiará los activos directamente al paquete, como se documenta here :
Xcode 6 proporciona una funcionalidad diferente para los catálogos de activos en función del destino de implementación para su proyecto:
- Para todos los proyectos, las imágenes individuales se pueden cargar utilizando nombres de conjuntos.
- Para proyectos con un objetivo de implementación de al menos iOS 7 u OS X 10.9, Xcode compila sus catálogos de activos en un formato de archivo binario en tiempo de ejecución que reduce el tiempo de descarga de su aplicación.
La advertencia es que cualquier información adicional (rebanar, modo de renderizado, ...) se ignora, solo se obtienen las imágenes simples. Aunque la organización a través de catálogos de activos puede ser más conveniente, siento que esto podría llevar a algunos errores / confusiones difíciles de encontrar ...
Edición: si aplica el truco descrito anteriormente, lo más probable es que no obtenga las ventajas de la división de aplicaciones introducidas con iOS 9, ya que después de crear la aplicación, no hay un catálogo compilado de activos, sino solo un montón de imágenes simples, por lo que Apple no lo hará. Ser capaz de despojar recursos automáticamente. Sin embargo, esto es solo una suposición.
Tengo un paquete separado de recursos que se envían con mi marco. Quiero poner y usar un catálogo de activos en ese paquete. Sin embargo, UIImage imageNamed: dice que usa el paquete principal de aplicaciones actuales. ¿Cómo puedo cargar una imagen de un catálogo de activos en un paquete diferente?
El truco de usar [bundle pathForResource: name ofType: @ "png"] no funciona con el catálogo de activos compilados. He verificado que el archivo Assets.car está de hecho en el paquete y contiene mis imágenes.
Según el desarrollador de Apple:
Desafortunadamente, no es posible cargar imágenes de ningún archivo de automóvil aparte de la que Xcode compila en su paquete principal, ya que + imageNamed: no acepta un parámetro de paquete, que es lo que se necesita para hacerlo (y aún así solo lo haría). ser capaz de abrir un solo catálogo de activos en un solo paquete).
Aqui esta el link:
A partir de iOS 8, ahora puede usar [UIImage imageNamed:inBundle:compatibleWithTraitCollection:]
para cargar imágenes por nombre de un paquete diferente. Por ejemplo, un marco dinámico puede usar su propio catálogo de activos separado del paquete principal de la aplicación.