我的应用程序以导航控制器启动,打开UIViewController。此屏幕用作登录页面。
登录时,我打开一个像这样的UITabBarController:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil];
UITabBarController *obj=[storyboard instantiateViewControllerWithIdentifier:@"MainTab"];
self.navigationController.navigationBarHidden=YES;
[self.navigationController pushViewController:obj animated:YES];
在我的标签栏控制器中,我希望在单击按钮以编程方式切换选项卡时。我尝试了以下3,它们都没有奏效。代码放在方法中,单击按钮时会调用该方法。
对于前2个,选项卡没有更改 - 仍然突出显示我的初始选项卡,并且未显示正确的视图控制器。对于最后一个,应用程序崩溃。
第一名:
self.tabBarController.selectedViewController = [self.tabBarController.viewControllers objectAtIndex:1];
第二名:
[self.parentViewController.tabBarController setSelectedIndex:1];
第三
UITabBarController *MyTabController = (UITabBarController *)((AppDelegate*) [[UIApplication sharedApplication] delegate]).window.rootViewController;
[MyTabController setSelectedIndex:1];
我错过了什么?
答案 0 :(得分:0)
导航控制器中的tabBar ...我缺少什么?
您遗失的一件事是视图控制器允许的order of containment。具体来说,您可以将导航控制器放在标签控制器中,但不能相反。