0

我已经使用Storyboards. 现在我正在为 Mac OS X 构建应用程序,似乎Storyboards不存在等效的 for 。

例如,我需要构建某种向导,其中包含四个不同的窗口或视图(步骤 1 到 4)。

目前,我创建了一个 Window xib(标准 MainMenu.xib),其中包含一个带有第一个视图的窗口和三个其他自定义视图。使用这种方法,我可以创建outletsactions,使我能够更改窗口的 contentView,例如单击按钮时。这似乎是一个公平的解决方案,我的观点都清晰地分组在一个 xib 中。但这也导致所有视图的逻辑都应该由同一个File's Owner处理,对吗?例如保存每个步骤的设置并控制不同视图之间的交互。

处理这种情况的首选方法是什么?我是否应该创建四个不同的窗口,也许在四个不同的 xib 文件中?如果您从 Internet 某处知道如何处理多个窗口的示例项目,请给我一个提示。

4

2 回答 2

2

为此,您可以使用 NSViewController 类。每个视图控制器将负责加载与其关联的 xib,并且与视图关联的所有逻辑都可以进入控制器内部(与 iOS 中相同)。MainMenu.xib 现在可以在初始化所需的视图控制器后加载适当的视图。

这是一个示例应用程序供您参考。 https://developer.apple.com/library/mac/samplecode/ViewController/Introduction/Intro.html

于 2013-10-18T09:15:22.130 回答
0

在 xcode 中,转到 File->New->New File 添加一个目标 C 类并将其设置为“NSViewController”的子类。这将自己创建 yourController.h、yourController.m 和 yourController.xib。现在您可以将您的视图和它的控制器类分开。

于 2013-10-18T11:00:20.550 回答