我在抓取一些可可功能(特別是控制器和代表)方面遇到困難,所以我決定完成一個基本的教程。我找到了「你的第一臺Mac應用程序」,並且一直運行良好,直到「Where To Next」階段。這裏有一堆大概基本的東西,我不知道這件事:
>
- 「創建一個新的控制器類和移動從應用程序委託管理跟蹤和用戶界面到這個新班級。「
...什麼是創建一個單獨的控制器類的地步?我得到了MVC模式,並在過去使用它,我只是無法弄清楚單獨的Controller和Delegate的地方。
- 「創建筆尖文件中的控制器類的實例,並作出適當的連接,並從它,而不是從應用程序的委託。」
...在此之前這一點上我只是想,我只是創建NSWindowController的一個子類,然後在文件的.xib該窗口應該是這個類的對象申報。現在我很困惑。控制器應該是什麼類?應該遵循什麼接口(對不起,協議)?如果這只是我指出的一類,那麼再一次 - 與我已經有的代表有什麼不同?
- 「添加從應用程序委託給新的控制器對象。當應用程序已完成啓動,則應用程序委託應該將消息發送到所述控制器,以顯示窗口的連接」。
...什麼信息?我發現的最接近的是的ShowWindow:消息NSWindowController類,但是當我寫這篇文章:
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
[trackController showWindow:self];
}
在AppDelegate中的的applicationDidFinishLaunching方法
,它顯示例如消息錯誤「接收器類型‘TrackController’是一個向前聲明」,我只是不明白這是什麼意思
更重要的是,爲什麼我應該發送消息來顯示這個窗口,如果這個窗口顯示沒有任何代碼,我創建所有,在一個空白的項目?也許我應該以某種方式關閉此默認行爲並自己創建此窗口的實例?