单击相应按钮后如何转到标签栏控制器

时间:2013-08-05 19:40:24

标签: ios objective-c uinavigationcontroller uitabbar

我有项目结构,如下所示。

enter image description here

在左侧,我有MainViewController。我有两个英语和阿拉伯语按钮。我想要做的是当我点击英文时,我想去英文标签栏控制器(HomeViewController)。

因此我写的是

- (IBAction)langEnglish:(id)sender {
    HomeViewController *secondView = [self.storyboard instantiateViewControllerWithIdentifier:@"enghome"];
    [self.navigationController pushViewController:secondView animated:YES];
}

这很完美,但我看不到标签栏。

此处缺少标签栏。

知道出了什么问题吗?


基本上我所拥有的是视图控制器作为主控制器,点击此控制器上的按钮后,标签视图控制器应该打开...

3 个答案:

答案 0 :(得分:1)

转到主故事板并选择主视图控制器。在顶部选择Editor-> Embed in->导航栏。

编辑:如果这不起作用,请按到标签栏并使用此代码:

self.tabBarController.selectedIndex = 1;

答案 1 :(得分:1)

我做的是如下

- (IBAction)langEnglish:(id)sender {
    EngTabViewController *secondView = [self.storyboard instantiateViewControllerWithIdentifier:@"engtab"];
    [self.navigationController pushViewController:secondView animated:YES];
}

EngTabViewController是UITabBarController,我将id分配给标签栏控制器......这就像魅力......

代替viewcontorller,我使用tabbarcontroller ...

答案 2 :(得分:0)

您不应该在UINavigationController上推送UITabBarController。而是将其设置为窗口的根视图控制器,并且应该按预期显示标签栏。