Tengo una aplicación que admite iOS8 y posterior, integrada en Xcode 7 y estoy usando una XIB para una pantalla de inicio (no tengo imágenes de inicio). La vista contiene un solo UILabel con la versión de la aplicación y 2 UIImageViews con imágenes que están presentes en Images.xcassets: un logotipo y una imagen de bienvenida.
El UILabel y la imagen del logotipo aparecen correctamente cuando inicio la aplicación, pero la imagen de bienvenida no aparece si ejecuto la aplicación en un iPad Air 2 con iOS9. He probado en un Air y un Mini con iOS8 y simuladores iOS9 para iPad 2, iPad Air y iPad Air 2 y la imagen aparece correctamente en todos ellos.
Ejecuté algunos problemas básicos de solución de problemas para ver si podía descubrir qué estaba sucediendo, pero no he podido resolverlo y la única diferencia que puedo ver entre la imagen que funciona y la que falla es cuando la agregué a la bienes...
Aquí hay un resumen de lo que sé:
El UIImageView para la imagen de bienvenida está en el lugar correcto, en el tamaño correcto. Puedo decir esto porque configuré su color de fondo en verde solo para asegurarme. La vista está ahí, pero la imagen no aparece. Así que supongo que la vista no tiene la culpa.
Al configurar UIImageView para que la imagen de bienvenida también use la imagen del logotipo, la imagen del logotipo aparece en el lugar correcto para la vista. Esto también me lleva a suponer que la vista no tiene la culpa.
El UIImage que estoy usando en la vista de imagen de bienvenida se usa en otra parte de la aplicación y aparece bien en esas otras vistas (la imagen del logotipo también se usa en otra parte de la aplicación y parece estar bien). Así que supongo que la imagen es válida y que aparezca en otras vistas no es un problema.
He confirmado que la configuración de UIImages para el logotipo y la presentación en el archivo xcassets es la misma. Están configurados en Universal, Cualquier ancho y alto, múltiples factores de escala, representados por defecto. Hay una diferencia: el logotipo tiene escalas 1x, 2x y 3x, mientras que la imagen de inicio solo tiene 1x y 2x, pero también he intentado usar UIImages con solo valores 1x, y 1x y 2x en UIView y funcionan (si fueran agregado al proyecto hace algún tiempo).
Agregar otra imagen de un tamaño o formato diferente (PNG y JPG) a mis xcassets y usar ese UIImage en UIImageView para la imagen de bienvenida también no se muestra.
Al agregar otro UIImageView al archivo XIB y asignarle un UIImage que ya estaba en los trabajos de xcassets, la imagen aparece en la pantalla de carga.
Copiar y renombrar los archivos de imagen utilizados para el logotipo y agregarlos al proyecto y luego usar ese UIImage en la vista de bienvenida tampoco se muestra.
Intenté limpiar el proyecto, reiniciar la máquina de desarrollo y eliminar la aplicación del Air 2 y volver a instalarla por si eso fuera un problema.
Estos últimos tres pasos me llevan a creer que hay algún problema con las imágenes agregadas después de un cierto punto en la vida del archivo del proyecto. Mientras actualicé a Xcode 7 ayer, la imagen de bienvenida se agregó originalmente en Xcode 6, pero la imagen del logotipo (también agregada en Xcode 6) se agregó algunos meses antes.
He revisado los archivos json en busca de la imagen del logotipo y la imagen de bienvenida y parecen tener el mismo formato. También he rastreado el archivo pbxproj buscando diferencias y no puedo ver ninguna.
Entonces, me preguntaba si alguien tenía alguna idea de por qué la pantalla de inicio podría no mostrar estas nuevas imágenes que estoy agregando específicamente en el Air 2. Otras preguntas que he estado leyendo relacionadas con las imágenes que no aparecen parecen relacionarse ya sea con Imágenes de lanzamiento o con imágenes en archivos XIB que tienen clases asociadas, ninguna de las cuales parece relevante aquí.