para mac for descargar ios iphone objective-c xcode xcode5

mac - iOS 7: error al crear una instancia del controlador de vista predeterminado



xcode for windows (12)

Así que esto también me pasó a mí también. Lo revisé 50 veces y mi "Controlador de vista inicial" fue verificado, créanme. Sucedió de la nada. Entonces, ¿cómo lo solucioné?

  1. Cree un Storyboard nuevo en su proyecto, asígnele un nombre similar a Main_iPhoneV2 (o iPadV2 según el estilo del guión gráfico original)
  2. Abra el guión gráfico roto, haga clic en cualquier parte del área blanca y presione comando-a, luego comando-c (seleccionar todo y copiar)
  3. Abra su nuevo guión gráfico y presione command-v para pegar la misma configuración exacta
  4. Vaya a la configuración de su proyecto, cambie su "Interfaz principal" al nuevo Main_iPhoneV2 (si es su iPad y está escribiendo una aplicación universal, tendrá que editar el -Info.plist y buscar el valor "Archivo del guión gráfico principal" nombre base (iPad)
  5. Vuelve a unir y deja de tirarte el pelo

Estoy usando Xcode 5 en una aplicación recién creada y cuando solo la creo voy por el botón de ejecución y hago clic en él, luego se construye el proyecto pero no aparece en el simulador de iOS y aparece el siguiente mensaje:

Failed to instantiate the default view controller for UIMainStoryboardFile ''Main'' - perhaps the designated entry point is not set?

He buscado en Google, por supuesto, y todos señalan que esto está sucediendo porque XCode aún no sabe qué controlador de visualización es el inicial. Pero lo extraño es que creé la aplicación como una aplicación basada en páginas (también intenté con la vista única y las aplicaciones con pestañas) y XCode ya había definido un Storyboard para eso.

Además, cuando voy a la opción de interfaz principal del proyecto, se establece el guión gráfico (denominado "Principal" por Xcode) y en el guión gráfico mi controlador de vista se configura como el "Controlador de vista inicial".

¿Qué está mal?


Configura la ventana manualmente

- (void)applicationDidBecomeActive:(UIApplication *)application { if (!application.keyWindow.rootViewController) { UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; UIViewController *myViewController= [storyboard instantiateViewControllerWithIdentifier:@"myViewController identifier"]; application.keyWindow.rootViewController = myViewController; } }


El producto "Clean" fue la solución para mí.


Esta advertencia también se informa si tiene algún código como:

window = UIWindow(frame: UIScreen.mainScreen().bounds) window?.rootViewController = myAwesomeRootViewController window?.makeKeyAndVisible()

En este caso, vaya a la primera página de la configuración de destino y configure Main Interface como vacía, ya que no necesita una entrada en el guión gráfico para su aplicación.


Lo he experimentado con mi Controlador de barra de pestañas que no aparece en el simulador junto con una pantalla negra. Hice lo siguiente para que mi aplicación aparezca en el simulador.

  1. Ir a Main.storyboard.
  2. Verifique el Is Initial View Controller en la pestaña del inspector de atributos.


Me aparece este error cuando cambio el nombre del archivo del guión gráfico " Main.storyboard " a " XXX.storyboard "

La solución para mí fue:

  • Producto-> Limpio
  • CAMBIAR: Archivos compatibles -> info.plist -> Nombre base del archivo del guión gráfico -> Principal TO: XXX

Buena suerte


Primero haga clic en Ver controlador en la barra de herramientas derecha. A continuación, seleccione el Inspector de atributos y asegúrese de que en la sección Controlador de vista esté marcada la casilla ''¿Está el controlador de la vista inicial'' ?


Si agregó un nuevo guión gráfico, debe verificar los siguientes puntos.

1) En su archivo plist compruebe el valor del nombre base del archivo del guión gráfico (iPad) o (iPhone) debe coincidir con el nombre del archivo del guión gráfico ( no agregue la extensión .storyboard )

2) En el guión gráfico debe haber un controlador de vista que se configure como Controlador de vista inicial

3) Limpia y construye tu proyecto. :)


Si has estado asignando tu código al control de fuente regularmente, esto puede ahorrarte la molestia de crear un Storyboard nuevo y posiblemente presentar más problemas ...

Pude resolver esto comparando el código fuente de Git de la versión que funcionaba contra el roto. El diff mostró que la primera línea debe contener el Id del controlador de vista inicial, en mi caso, initialViewController = "Q7U-eo-vxw" . Busqué a través del código fuente para estar seguro de que la identificación existía. ¡Todo lo que tenía que hacer era volver a ponerlo y todo volvió a funcionar!

<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="5056" systemVersion="13E28" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" initialViewController="Q7U-eo-vxw"> <dependencies> <deployment defaultVersion="1296" identifier="iOS"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3733"/> </dependencies> <scenes>

Estos son algunos pasos que pueden ayudarlo a solucionar problemas:

  1. Haga clic con el botón derecho en el Storyboard que falla y use Source Control> Commit ... para conservar sus cambios desde el último commit.
  2. Intenta hacer clic con el botón derecho en tu Storyboard que falla y utiliza "Abrir como> Código fuente" para ver el XML del guión gráfico.
  3. En el elemento del documento , busque el atributo llamado " initialViewController ". Si falta, no te preocupes, arreglaremos eso. Si está allí, haga doble clic en el id que está asignado, command-c para copiarlo, command-f command-v para buscarlo más profundamente en el documento. Este es el identificador del controlador que debe proporcionar la vista inicial. Si no está definido en el documento, entonces ese es un problema. Debe eliminarlo de la etiqueta del documento, en mi caso initialViewController = "Q7U-eo-vxw" .
  4. Vaya a la opción de menú de Xcode llamada Ver y elija Editor de versiones> Mostrar vista de comparación
  5. Esto muestra su versión local a la izquierda y la versión histórica a la derecha. Haga clic en la fecha debajo de la versión histórica para obtener una lista de los commits para este story board. Elija uno que sepa que funcionó y compare el elemento del documento . ¿Cuál es la identificación del * initialViewController ? ¿Es diferente? Si es así, intente volver a editarlo manualmente y en ejecución.

Verifique el controlador de vista inicial en el inspector de atributos.


Además de la respuesta correcta anterior, también asegúrese de haber configurado la Interfaz principal correcta en General.


Usando Interface Builder:

Compruebe si está configurado '' Es el controlador de vista inicial ''. Puede configurarlo usando los pasos a continuación:

  1. Seleccione su controlador de vista (que debe aparecer como pantalla inicial).
  2. Seleccione el inspector de atributos de la ventana de Utilidades .
  3. Seleccione '' Is Initial View Controller '' en la sección View Controller (si no es así).

Si ha realizado este paso y aún obtiene el error, uncheck and do it again.

Usando programáticamente:

C objetivo :

self.window = [[UIWindow alloc] initWithFrame:UIScreen.mainScreen.bounds]; UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; UIViewController *viewController = [storyboard instantiateViewControllerWithIdentifier:@"HomeViewController"]; // <storyboard id> self.window.rootViewController = viewController; [self.window makeKeyAndVisible]; return YES;

Swift:

self.window = UIWindow(frame: UIScreen.mainScreen().bounds) let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) var objMainViewController: MainViewController = mainStoryboard.instantiateViewControllerWithIdentifier("MainController") as! MainViewController self.window?.rootViewController = objMainViewController self.window?.makeKeyAndVisible() return true