2012-01-22 30 views
0

在可可中的多種風格的主窗口之間切換的最佳方式是什麼? 我的意思是iTunes的迷你播放器視圖和正常大小的視圖。 我想要佈置不同的筆尖文件,並讓用戶在較小的一個或較大的一個之間進行選擇,以獲得更多詳細信息。
我需要一個NSWindowController還是確定加載筆尖在App代表這樣的:
[NSBundle loadNibNamed:@"BigWindow" owner:self];管理可可中的主窗口的多種風格

回答

0

你應該總是使用NSWindowController加載包含窗口的筆尖。這是因爲NSWindowController會爲您處理筆尖內存管理,否則會有些痛苦。

如果您只想從一個筆尖加載視圖,請改用NSViewController

+0

嗯,謝謝,我試圖分享一些窗口之間的邏輯。兩個窗戶都做同樣的事情,他們只是有不同的大小和外觀。當我爲每個窗口(xib文件)使用NSWindowController並分配應用程序委託時,我爲每個窗口控制器獲得了應用程序委託的實例。我想我監督一些事情。必須有一個簡單的方法來做到這一點(因爲它是在不同佈局的全屏應用程序中完成的)。 – stronzo

+0

您的應用程序控制器應該以編程方式實例化窗口控制器並保留對它們的引用(一個ivar)。 「分配應用程序委託」是什麼意思? –

+0

我的應用程序控制器和委託是相同的。我實例化一個窗口控制器並將其作爲代理的一個ivar。在xib文件中,我有一個應用程序委託對象,用於連接到應用程序委託中的IBActions。當我從窗口中闖入一個方法時,我發現應用程序委託ivars的地址爲0x0。應用程序委託本身具有另一個地址,而不是'appDidFinishLoading'方法。當我從主菜單調用一個方法時,一切都很好。所以我搞砸了一些東西。讓每個xib中的應用程序委託調用IBActions是錯誤的嗎? – stronzo