1

我正在尝试开发 mac 应用程序(可可应用程序)。我已成功在 iphone 应用程序中使用标签栏。但是在开发mac应用程序时,如何使用tabbar?

当我们为 iphone 应用程序使用标签栏时,我想为 Mac 应用程序(可可应用程序)实现相同的功能。

任何想法?它怎么可能?

4

1 回答 1

1

当您提到“tabbar”或“Tababr”时,我认为您正在谈论 NSTabView ...

您不需要在一个 AppDelegate 中编写整个应用程序。

您可以将 AppDelegate 添加为 NSTabView 的委托,然后实现tabView:didSelectTabViewItem:. 这允许您拦截用户对不同选项卡的请求。只需为您的选项卡视图创建一个出口并设置委托:

[[self tabView] setDelegate: self]

根据请求的选项卡,您可以创建与该选项卡关联的视图控制器并将 NSView 加载到选定的选项卡中。就像是:

- (void)tabView:(NSTabView *)tabView didSelectTabViewItem:(NSTabViewItem *)tabViewItem {

  MyViewController aController = [[MyViewController alloc]
    initWithNibName: @"MyView" bundle: [NSBundle mainBundle]];
  [tabviewItem setView: [aController view]];

}

我不确定您是否需要将 NSTabViewDelegate 作为协议添加到您的 AppDelegate 但如果 Xcode 标记警告,您会注意到:

@interface MyAppDelegate : NSApplicationDelegate <NSTabViewDelegate>

希望这可以帮助。否则,您需要详细说明您的要求。

于 2012-01-14T00:00:34.260 回答