所以我开始学习如何使用 Cocoa。我想我已经明白了,但我对创建和切换视图很感兴趣。我正在重写我之前制作的游戏以进行练习。我想要的只是一个窗口(最好不能调整大小),并且我希望能够在游戏中切换不同屏幕的视图。
首先,我有主菜单(开始游戏、高分、退出)。然后我需要每个屏幕(游戏屏幕,高分屏幕)都有一个窗口。
我感到困惑的是如何设计这个。我查找 NSViewController 认为它管理视图,但它没有。它只通过真正加载一个视图来管理它。我不明白为什么我需要使用 NSViewController 。难道我不能只有一个包含多个 NSView 子类的窗口类并像那样加载它们吗?我不确定我是否理解 ViewController 的用途。
我的窗口类真的需要继承 NSWindowController 吗?我试图遵循 Apple 的 ViewController 示例的示例,它有一个窗口控制器类,它是 NSWindowController 的子类。我不明白继承它的目的是什么。所有 NSWindowController 似乎都添加了,- initWithPath:(NSString *)newPath
但是当我可以编辑 plist 文件以在启动时打开窗口时,我看不到它的用途。Apple 的示例也有一个 NSView 变量和一个 NSViewController 变量。你不是只需要一个变量来存储当前视图吗?
在此先感谢各位,我真的很困惑这是如何工作的。