objective-c - tareas - no se maximizan las ventanas en windows 10
Se espera que las ventanas de aplicaciones tengan un controlador de vista raíz al final de la advertencia de inicio de la aplicación (4)
He estado atascado con esta advertencia durante varias horas. He buscado respuestas, intenté todas las que encontré y no pude encontrar la solución. Aquí está el resumen del código que tengo, que Xcode genera por defecto.
Esto está en mi AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];
return YES;
}
Tengo esto en main.m (de acuerdo con esta respuesta )
int main(int argc, char *argv[])
{
@autoreleasepool {
int retVal = UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
return retVal;
}
}
También tengo todas las conexiones en mi MainWindow.xib conectadas correctamente. Así que estoy perdido ahora. ¿Algo que podría estar perdiendo? ¡Gracias por adelantado!
Es extraño establecer el rootViewController
su ventana en la application:didFinishLaunchingWithOptions:
si tiene un MainWindow.xib
. Por lo general, un proyecto sigue una de las tres plantillas:
Algunos proyectos tienen
MainWindow.xib
. La "Interfaz principal" del objetivo está configurada como "Ventana principal" en la pestaña Resumen del objetivo (o en su Info.plist). El propietario de este archivoUIApplication
esUIApplication
. El xib contiene una instancia deAppDelegate
, conectada al punto dedelegate
del propietario del archivo. El xib también contiene unaUIWindow
, cuya salidarootViewController
está conectada a unUIViewController
(o subclase, comoUINavigationController
), que también está en el xib. Para cuando el delegado de la aplicación recibe laapplication:didFinishLaunchingWithOptions:
message, el xib está completamente cargado, por lo que la ventana y su controlador de vista raíz ya están configurados.Otros proyectos no tienen
MainWindow.xib
. La "Interfaz principal" del objetivo está vacía. En cambio, la funciónUIApplicationMain
crea una instancia deAppDelegate
, la configura como el delegado deUIApplication
y la envía a laapplication:didFinishLaunchingWithOptions:
message. El delegado de la aplicación maneja ese mensaje creando unaUIWindow
, creando un controlador de vista (o varios) y configurando la propiedadrootViewController
la ventana. La versión predeterminada es así:- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; // Override point for customization after application launch. self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil]; self.window.rootViewController = self.viewController; [self.window makeKeyAndVisible]; return YES; }
Algunos proyectos tienen un
MainStoryboard.storyboard
. No voy a describir esto en detalle porque no parece relevante para su problema.
El problema que está describiendo hace que parezca que usa la mitad de la primera plantilla y la mitad de la segunda plantilla. Eso no funcionará Debe decidir qué enfoque está tomando e ir all-in.
Puede abrir el archivo xib y hacer clic derecho en "Propietario del archivo" en Marcadores de posición. Si la vista no se conectó a la salida de la vista, mantenga presionada la tecla "Ctrl" y arrastre el clic derecho del mouse para diseñar, luego vuelva a ejecutar ^^ (no arrastre a un control particular, arrastre al diseño de fondo cuando aparezca el borde Vista).
Tengo un problema para resolver en mi proyecto. Sigue los pasos a continuación para resolverlo.
1) Abra el archivo de punta de controlador de vista principal, ese archivo al que hace referencia en appDelegate
eg.ViewCotroller.xib
2) En el archivo semilla, compruebe la conexión de visualización, si no está conectado al propietario del archivo, conéctelo.
3) Ahora ejecuta el proyecto.
Tengo este mensaje porque tenía en mi RootViewController @property (débil, no atómico) IBOutlet UIView * loadView ; y viewDidLoad fue llamado dos veces ... Cambiarle el nombre a algo más ...