2012-10-29 56 views
1

有一個小問題,我正忙於創建一個OSX應用程序。在我的第一個視圖(appdelegate)我有一個登錄屏幕,但在用戶登錄後,我想(翻轉登錄控制器(main.xib)以刪除登錄屏幕並打開一個新的NSWindowcontroller。覆蓋NSWindowController

什麼是最好的方法?這樣做,我試過;

Second = [[SecondController alloc] initWithWindowNibName:@"SecondController"]; 

[[Second window] makeFirstResponder:nil]; 

但是現在的第二控制器出現,但第一控制器停留在iOS開發我做(希望同樣的事情,但比OSX)

CategoriesViewController *tableController = [CategoriesViewController alloc]; 

    tableController.managedObjectContext = [self managedObjectContext]; 

    self.navigationController = [[UINavigationController alloc] initWithRootViewController:tableController]; 

回答

1

CARMIN是正確的,但你可以做

[Yourwindow close:nil];

1

。每個窗口控制器控制一個窗口,你有兩個窗口控制器你有兩個窗戶。 iOS一次只顯示一個窗口,一次顯示多個窗口。您需要NSWindow-關閉登錄窗口以使其消失。如果NSWindow-releasedWhenClosed屬性未設置,您可能還希望釋放登錄窗口。

+0

但我怎麼可以關閉應用程序的委託(main.xib)'[自行關閉]'好好嘗試的工作,也會'[AppDelegate的窗口]關閉];'doens't工作。 – Frenck