2012-05-24 45 views
1

我顯示模式子類的窗口:當NSWindow的IBOutlet組件初始化時?

NSWindowController* controller = [[NSWindowController alloc] initWithWindowNibName: @"MyWindow"]; 
[NSApp runModalForWindow: [controller window]]; 

而且我在窗口子類中重寫initWithContentRect:(NSRect)contentRect styleMask:(NSUInteger)aStyle backing:(NSBackingStoreType)bufferingType defer:(BOOL)flag到鏈接到筆尖文件設置孩子的意見。但這些孩子現在還沒有初始化(都是零)。

在哪裏放置我的初始化代碼?

回答

1

nib/xib加載器創建對象(與一些來自init系列的構建器)並以未定義的順序設置其出口。當它們全部存在並且所有插座設置完成後,它將awakeFromNib發送到nib/xib文件(接受該消息)的所有對象,因此這是執行大部分初始化的正確位置。