如何使用cocoa和界面构建器创建一个窗口应用程序?

时间:2010-01-29 14:46:17

标签: cocoa xcode interface-builder

我刚刚开始使用界面构建器,我想创建一个与CodaVersions类似的标签式单窗口应用程序。

然而,我无法弄清楚我应该采取什么方法。我想我可能需要创建自己的标签栏和某种控制器来加载/卸载不同的“视图”,但个人的“观点”应该是什么?

是创建多个窗口并以某种方式在父窗口中加载它们的情况,还是应该切换一堆自定义视图的可见性,还是有完全不同的方法?

2 个答案:

答案 0 :(得分:3)

在Cocoa中切换一组视图的标准方法是使用NSTabView。您可以setTabViewType:NSNoTabsNoBorder完全隐藏标签,仅使用标签视图切换您的观看次数。如果将选项卡视图放入窗口的内容视图中,并调整自动调整大小,则选项卡视图将切换整个窗口内容。

您可以使用自定义工具栏项激活各个标签。

答案 1 :(得分:2)

我就是这样做的:

对于每个视图,我创建了单独的nib和ViewController(SomethingViewController:NSViewController)。在nib中我将“File的所有者”设置为SomethingViewController。

视图控制器自动加载nib:

- (id) init
{
   if(self = [super initWithNibName:@"HistoryTab" bundle:nil])
   {
      [self loadView];
   }

   return self;
}

我只是创建了ViewController的实例。

要创建像Coda一样的标签,您需要编写一些代码或使用BWToolkit

对不起我的英文;)

编辑:

我会忘记 - 在主窗口中我有mainView视图,加载ViewController后我只在app控制器中执行:

[self.mainView addSubview:[viewController view]];

切换标签I时:

[[viewController view] removeFromSuperlayer];