Quiero obtener una pantalla de inicio simple para mostrar en mi aplicación, creada con Xcode 6.0.1.
He agregado una pantalla de inicio de dos maneras: como XIB (con el nombre predeterminado, LaunchScreen.xib) y como un conjunto de imágenes de lanzamiento dentro de xcassets.
Me aseguré de que mi "Launch Screen File" esté configurado en LaunchScreen.xib.
He simulado todos los dispositivos disponibles (por ejemplo, "iPhone5 iOS8" / "iPhone5s iOS8" / "iPhone6 iOS8". Tenga en cuenta que solo iOS 8 está disponible dentro del simulador).
ios8
xcode6
xcasset
launchimage
Eddie Hartman
fuente
fuente
Respuestas:
Así que esto ha sido bastante doloroso para algo que debería ser trivial. Aquí esta lo que hice:
Use xcassets
Decidí usar .xcassets versus .xib para el lanzamiento. Eliminé el .xib. Si ya tiene images.xcassets en su proyecto, entonces excelente, de lo contrario puede agregar uno desde Archivo> Nuevo> archivo:
Crear un conjunto de imágenes de lanzamiento
Ahora cree como mínimo un conjunto de imágenes de lanzamiento y un conjunto de iconos en su archivo .xcassets haciendo clic derecho en el área del navegador.
Actualice los iconos de la aplicación y la configuración de Iniciar imágenes
Luego me aseguré de que el "icono de aplicaciones y los conjuntos de imágenes" en mi objetivo sean los siguientes.
Muy importante: asegúrese de que la configuración "Iniciar archivo de pantalla" esté en blanco.
Agregar las imágenes
Por último, pero no menos importante, la terminología utilizada por Apple para la selección del dispositivo es confusa. Inicialmente pensé que, dado que estoy implementando solo para iOS8 (iPhone Portrait), puedo hacer esto y solo poner las imágenes de lanzamiento del iPhone 6 y iPhone 6+:
Rápidamente me di cuenta de que no funciona así y recibí una advertencia: "Se requiere una imagen de inicio de iPhone Retina (4 pulgadas) para iOS 7.0 y posterior".
Así que también tuve que seleccionar el iPhone con iOS 7.0 y posterior y agregar una imagen para el iPhone 5s.
Entonces, para averiguar qué casillas marcar a la derecha, no haga la pregunta: ¿Cuál es mi orientación mínima de iOS y dispositivo y dispositivo?
¿Qué dispositivos pueden soportar mi iOS mínimo? ¿Cuál es el mínimo de iOS compatible con esos dispositivos? Y asegúrese de marcar todas esas casillas. Entonces, para mí, apunto al iPhone 5s, 6 y 6 Plus en 8.0, pero dado que el iPhone 5s puede existir con 7.0, también necesito marcar la casilla 7.0 para mostrar el marcador de posición de la imagen. En otras palabras, la casilla de verificación (iOS) a la derecha le muestra la versión mínima de iOS disponible para ese dispositivo y debe hacer clic para mostrar el marcador de posición de la imagen y colocar una imagen independientemente de si está implementando en esta versión de iOS o no .
Espero que esto ayude a alguien.
fuente
El
LaunchScreen.xib
valor y la informaciónLaunch screen interface file base name
son, según mi experiencia, ambos marcadores de posición que se crean cuando se crea el proyecto. Si desea utilizarImages.xcassets
exclusivamente para sus pantallas de inicio, elimine tantoLaunchScreen.xib
elinfo.plist
elemento como el.Si proporciona la
info.plist
configuración, su aplicación utilizaráxib
y no suImages.xcassets
fuente
Xcode 8:
Las imágenes utilizadas en LaunchScreen.xib no deben estar en un .xcassets, intente colocarlas en el paquete.
Parece que para cuando se carga el .xib, las imágenes en los .xcassets aún no están disponibles.
EDITAR: por alguna razón opaca después de agregar algunas localizaciones, la pantalla de inicio dejó de funcionar, ahora funciona con una imagen de los activos, extremadamente extraña.
fuente
/Library/Caches/Snapshots/<<app_bundle>>/
completadas antes de cargar los archivos de soporte, incluidas las fuentes personalizadas y el catálogo de activos.Mi solución fue crear todas las imágenes de lanzamiento.
Luego configuro la Fuente de imágenes de inicio en el recurso LaunchImage y dejo en blanco el archivo de pantalla de inicio.
Finalmente, si el proyecto no tiene un Launch Screen.xib, agregue ese archivo y déjelo como está.
fuente
Para mí, funcionó cuando desinstalé la aplicación y luego reinicié el simulador. Cuando se instala nuevamente, la imagen de inicio apareció como se esperaba. Esto también funcionó en un dispositivo real.
fuente
Para las personas que están usando el
Asset Catalog's Launch Image
, como aprendí esto de la manera más difícil, tuve este escenario donde primero me dieron unjpg
archivo y luego les pedí que lo convirtieranPNG
.Confié en ellos lo suficiente como para buscar primero en Internet por qué no se mostraba la imagen de lanzamiento e hice todas las soluciones en vano, luego intenté volver a colocar la imagen de lanzamiento anterior y funcionó bien, fue allí donde pensé lo que hice. tener no es un
PNG
archivo adecuado .TL; DR: asegúrese de estar utilizando un archivo PNG adecuado, no un archivo con una extensión renombrada.
fuente
Eliminar el "Nombre base del archivo de la interfaz de la pantalla de inicio" del archivo Info.plist Y desechar "Launch Screen.xib" funcionó para mí.
fuente
Simplemente eliminar y reinstalar la aplicación funcionó para mí:
Pruebas en el simulador
Prueba en dispositivo
fuente
El problema con la respuesta aceptada es que si no configura el archivo de pantalla de inicio, su aplicación estará en modo de escalado en dispositivos como el iPhone 6 y 6+ => representación borrosa.
A continuación se muestra lo que hice para tener una solución de trabajo completa (estoy apuntando a iOS 7.1 y usando Xcode 8) en cada dispositivo (realmente, me estaba volviendo loco por este problema de escalamiento)
1. Prepare sus .xcassets
Para simplificarlo, estoy usando un archivo vectorial .PDF. Es muy conveniente y evita crear múltiples imágenes para cada resolución (1x, 2x, 3x ...). También supongo que aquí ya creaste tus xcassets.
2. Cree su archivo de pantalla de inicio
3. Agregue su imagen a su archivo de pantalla de inicio
4. Agregue su archivo de pantalla de inicio a su objetivo
Finalmente, en las propiedades generales de Target, consulte el archivo de pantalla de inicio.
Inicie su aplicación, y su pantalla de presentación debería aparecer. Pruebe también en iPhone6 y iPhone6 +, y su aplicación debería mostrarse correctamente sin ningún aumento de escala (el archivo de pantalla de inicio tiene como objetivo hacer esto).
fuente
Después de varias horas frustrado por esto, decidí usarlo de esta manera. Funciona tanto para iPhone como para iPad (en Xcode 6.1)
1 imagen vale más que mil palabras. Por favor mira abajo:
fuente
He leído sobre un error en Xcode 6 que impide que las aplicaciones de solo paisaje muestren una imagen de inicio.
Intente establecer imágenes y orientación dentro de Images.xcassets:
fuente
Hay un error en el que las imágenes de lanzamiento de Xcode 6 almacenadas en archivos de activos provocan que las aplicaciones solo de iPhone Landscape en iOS7 / iOS8 muestren una imagen de inicio en negro. El iPad funciona bien.
http://www.raywenderlich.com/forums/viewtopic.php?f=2&t=10868
Solución: utilice el nuevo Launchscreen.xib para ios8 + en adelante. (es mucho mejor)
Para que los dispositivos ios7 funcionen, simplemente apague la fuente de imágenes de lanzamiento y use los nombres de archivos de imágenes de lanzamiento de la vieja escuela en la lista
Doloroso pero funciona. si
fuente
He intentado todo pero la solución fue extremadamente simple. Simplemente use el archivo .jpg en lugar de .png en su LaunchScreen.storyboard. Parece que iOS no representa el archivo .png o el tamaño de imagen relativamente grande en la pantalla de inicio.
fuente
Haz lo que respondió Spectravideo328 y:
Intente DESHABILITAR el casillero iOS 7 y posterior y marque el casillero iOS 6 y anterior en el catálogo de activos. Parece que hay un error con la imagen de lanzamiento de iOS 7. (Ambos tienen las mismas imágenes de lanzamiento, excepto la 320x480)
Espero que esto ayude, ¡me ayudó!
fuente
Configuré "LaunchImage" en mi catálogo de activos y simplemente borré el campo "Launch Screen" y ¡listo! Tenía las imágenes de lanzamiento aparecen ...
fuente
Una forma es agregar también "Pantalla de inicio" (
LaunchScreen.xib
), pegar la imagenUIImageView
y luego configurarla en " Centro horizontal en contenedor " y " Centro vertical en contenedor " en "Alinear" si está utilizando Diseño automático.Pantalla: http://i.stack.imgur.com/CfnHT.png
No olvide poner
LaunchScreen.xib
en "Iniciar archivo de pantalla".fuente
Tuve el mismo problema después de que comencé a usar Xcode 6.1 y cambié las imágenes de mi lanzador. Tenía todas las imágenes en un Catálogo de activos. Solo obtendría una pantalla negra en lugar de la imagen estática esperada. Después de probar tantas cosas, me di cuenta de que el problema era que el Catálogo de activos tenía el Proyecto 'Membresía objetivo' marcado en su vista FileInspector. Marcarlo en ON hizo la magia y la imagen comenzó a aparecer en el lanzamiento de la aplicación.
fuente
Mi sugerencia para usted es seleccionar Iniciar fuente de imagen como Image.Assets. Cree elementos de imagen de bienvenida allí en la carpeta Image.assests.
Imagen de referencia para la configuración correcta:
fuente
Intenté abrir un nuevo proyecto y seguir los mismos pasos que hiciste para configurar una pantalla de inicio.
Por defecto, el .xib se configuró como "Iniciar archivo de pantalla", y la pantalla blanca con una etiqueta se mostró durante medio segundo en el simulador.
Luego hice un "Iniciar fuente de imágenes" y lo configuré en el archivo Images.xcassets que se generó con las imágenes de fondo que agregué al proyecto. (todo bien hasta ahora)
Vuelva a ejecutar el simulador y las imágenes de lanzamiento no se muestran ...
Después de eliminar el "Archivo de pantalla de inicio" especificado y una limpieza: Producto -> Limpiar, desde el menú superior, finalmente aparecen las imágenes de inicio.
Tal vez eso ayude?
fuente
Hay un archivo 'LaunchScreen.xib' agregado automáticamente a su proyecto. Al eliminarlo, xCode utilizará sus imágenes predeterminadas en Images.xcassets
editado para agregar ir a Iconos de aplicaciones e Iniciar imágenes El archivo de pantalla de inicio debe estar en blanco / vacío
fuente
Tuve un error muy extraño. Aparentemente, mi fuente de imagen de inicio solo se configuró para la configuración de depuración y no se lanzó. Esto dio como resultado que mi pantalla de inicio apareciera cuando ejecutaba la configuración de depuración, pero cuando cambié para liberar me apareció una pantalla negra.
Solucioné esto cuando cambié mi configuración de compilación para que apareciera el botón Iniciar fuente de imagen y tuve que elegir Usar catálogo de activos nuevamente.
Para aquellos que tienen curiosidad, así es como se veía mi project.pbxproj.
fuente
Por alguna razón, tuve que cambiar la ubicación del catálogo de activos a "relativa al proyecto" para que esto funcione.
También eliminé la aplicación de mi teléfono y la reinstalé, pero probablemente fue el "relativo al proyecto" lo que lo hizo.
fuente
* (Xcode 7.2 / Objetivo de implementación 7.0 / Solo orientación horizontal) *
Sé que es una pregunta antigua, pero con Xcode 7.2 todavía recibo el mensaje y lo solucioné con esto:
1) Seleccione RETRATO y ambos paisajes. Agregue "Iniciar fuente de imágenes" y "Iniciar archivo de pantalla"
2) En su Imagen de lanzamiento, seleccione iPhone "8.0 y posterior" y "7.0 y posterior".
3) Agregue este código en su aplicación Delegue:
4) Agregue esto en su ViewController
Espero ayudar a alguien más.
fuente
Esto me funcionó. Haga clic en LaunchScreen.storyboard y luego, en el panel derecho, puede seleccionar la casilla de verificación "Es el controlador de vista inicial".
LaunchScreen.storyboard -> es el controlador de vista inicial
fuente
Me acabo de dar cuenta de esto. Mi imagen de inicio no se mostraba, aparece una pantalla en blanco al iniciar en un dispositivo (iPhone 6, 7+) o testFlight. Solución: se cambió el nombre de "Landing_screen.png" a solo "Landing_screen" eliminando la parte .png. El icono de imagen en Xcode cambió a icono blanco y en el guión gráfico de la pantalla de inicio, la imagen aparece ahora como un signo de interrogación. Ahora aparece la imagen de lanzamiento y no la pantalla en blanco. Mi configuración: estoy usando Swift 3.1 con Xcode 8.3.1. En LaunchScreen.storyboard agregué una vista de imagen simple y estiré la imagen para que se ajuste al controlador de vista. Establecí las restricciones de diseño automático en el espacio Superior / Inferior / Principal / Tradicional a la vista general a 0.
fuente
Si ha cambiado su imagen de inicio de una imagen anterior, y observe lo siguiente:
Es probable debido al almacenamiento en caché de la imagen de lanzamiento realizada por iOS. Reiniciar el dispositivo debería resolver el problema.
fuente
Encontré este error también con mi aplicación de solo paisaje. La siguiente solución de carlodurso funciona:
fuente
Para mí, funciona cuando lo elimino
LaunchScreen.xib
y lo cambio a un archivo de guión gráficoLaunchScreen.storyboard
.fuente