以编程方式更改选项卡栏

dun*_*sys 3 cocoa tabs objective-c

我正在尝试在单击按钮时更改选项卡视图.我有这个代码:

- (IBAction)startScratch:(id)sender {
     _mainTabBar.tabBarController.selectedIndex = 1;
        //Error: ^ Property tabBarController not found on type "NSTabView*"
}
Run Code Online (Sandbox Code Playgroud)

.h文件包含以下代码行:

@property (weak) IBOutlet NSTabView *mainTabBar;
- (IBAction)startScratch:(id)sender;
Run Code Online (Sandbox Code Playgroud)

我假设我应该用某些东西替换_mainTabBar,但如果是的话,那是什么?

小智 12

正如@ H2CO3所述,没有tabBarController财产NSTabView.如果你阅读文档,你会发现它NSTabView提供了一些选择方法,包括-selectTabViewItemAtIndex:你可以这样使用的方法:

- (IBAction)startScratch:(id)sender {
    [_mainTabBar selectTabViewItemAtIndex:1];
}
Run Code Online (Sandbox Code Playgroud)

请注意,第一个选项卡位于索引0处.