Tengo un archivo NIB que cargo usando NSWindowController initWindowNibName. El archivo NIB contiene una NSWindow. Es el propietario del archivo de la clase NSWindowController. He conectado la salida de ventana del propietario del archivo a la ventana.Cargando el archivo NIB utilizando NSWindowController no establece la ventana o los objetos de nivel superior
Cuando cargo el NIB, [windowController window] es nulo y también lo es la matriz de objetos de nivel superior. Sin embargo, todavía puedo llamar a [windowController showWindow: nil] y mostrar la ventana con éxito.
Algo simplemente no parece correcto aquí. He confirmado que las conexiones y el propietario del archivo están bien. De hecho, cuando miro el valor de propietario de la instancia de windowController en el depurador, lo veo apuntando a sí mismo como espero.
¿Alguna sugerencia sobre qué podría estar pasando?
Gracias!
Sí, tienes razón. Estaba afirmando que la ventana no era nula antes de llamar a [ventana del controlador]. Todavía no estoy acostumbrado a mucha de la 'magia' que Cocoa hace por ti bajo las sábanas ... es más inteligente que yo, o me hace parecer más tonto de lo que creo. – psychotik
Cuanto más tiempo desarrollo en Cocoa, más aprendo la poca magia que realmente es (a excepción de KVO, el método swizzling es mágico incluso cuando lo entiendes). El truco es no confiar en ningún detalle de implementación interna. No asumas que sabes lo que significa _window. Tiene un guión bajo; No es tu problema. Las interfaces públicas son extremadamente consistentes en sus comportamientos. No intentes escabullirte a su alrededor. ¡Buena suerte! –