了解应如何组织本机Mac应用程序

时间:2014-06-01 12:12:10

标签: objective-c macos cocoa

我刚开始研究创建Mac应用程序和iOS之间的差异,我现在已经非常熟悉了。我遇到的主要问题之一是找到我应该如何组织我的应用程序的资源,就像任何Cocoa开发人员在Mac上所做的那样。使用iOS,我习惯使用UIViewControllers / UITableViewControllers和故事板。 Mac上的范例似乎有所不同,显然有窗户改变了事情。

我想要开始的应用程序只有一个窗口,偶尔会有一个小弹出窗口,还有一个首选项屏幕。主窗口还有一堆标签,用户可以从中访问不同的信息。我的主要问题是如何构建它 - 使用默认的Mac模板,它为我加载xib文件,并依赖于AppDelegate来使用UI。我应该创建UIWindowController的子类然后加载nib文件并从那里使用我的UI吗?如果有,我可以在哪里阅读nib如何使用UIWindowController s?

关于在构建Mac应用程序代码方面与iOS相比有什么不同的任何其他提示都会非常有用。

谢谢!

1 个答案:

答案 0 :(得分:1)

NSWindowController相当于一个UIViewController(它就像一个根NSViewController),还有NSViewControllers,但它们并不重要,你也有一个NSDocument也是一个控制器,Mac应用程序将控制器分为视图控制器( NSWindowControl)和模型控制器(NSDocument),NSDocument负责控制模型,序列化它,视图控制器更像是模型视图中的演示者当前范例,其中NSWindowController(和NSViewController)代表XIB文件,填写字段值,作为代表查看对象等。在一些简单的应用程序中,你可以取消一个NSWindowController并让NSDocument处理控制器完全自己,我几乎总是创建一个NSWindowControler它并不困难,它与我通常采取的步骤不变。