如何在所有UIViewControllers中显示Tab Bar Controller

时间:2016-11-10 10:32:07

标签: ios objective-c iphone tabs

我的iPhone应用程序显示标签栏,按钮上有3个标签点击。 它适用于最初的3个UIViewControllers。 但是当我尝试在任何TAB中推送新的UIViewController时,标签栏会消失。 我甚至在这里尝试了其他解决方案http://stackoverflow.com/questions/31087181/tab-bar-controller-is-not-in-all-uiviewcontrollers 但是我只能看到没有标签栏选项的空格......

enter image description here

我尝试没有导航按正常方式推UIViewController。一世 还从Tab栏推送UIViewController(具有UIViewController的导航控制器),但任何方式都没有给我想要的结果。 我不想要两个导航项或没有标签栏推送新视图。

所有UIViewController都应显示在一个导航栏和标签栏中。

请帮忙

注意:我从点击家庭uiviewcontroller上的按钮加载TABBar,如

喜欢

    -(IBAction)btnReceivePressed:(id)sender
 {
     TabBarViewController *about_vc = (TabBarViewController*)[[UIStoryboard   storyboardWithName:@"Main" bundle:[NSBundle mainBundle]] instantiateViewControllerWithIdentifier:@"TABBAR"];
     [[self navigationController] pushViewController:about_vc animated:YES];
 }
下面是显示两个导航项目的屏幕截图。     enter image description here] 3     [enter image description here] [4     enter image description here

1 个答案:

答案 0 :(得分:2)

尝试使用UIViewcontroller的set属性:

enter image description here

两个导航栏的

另一个解决方案

您需要更改appdelgate,如下所示:

来自:

 UINavigationController *naController =[[UINavigationController alloc ]initWithRootViewController:self.tabBarController];
  naController.navigationBarHidden = NO;
  self.window.rootViewController = naController;

使用:

self.window.rootViewController = self.tabBarController;

第三种解决方案如果您使用推送。

- (IBAction)btnReceivePressed:(id)sender {
    TabBarViewController about_vc = (TabBarViewController)
    [[UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]] instantiateViewControllerWithIdentifier:@"TABBAR"]; 
    [self navigationController].navigationBarHidden = YES;
    [[self navigationController] pushViewController:about_vc animated:YES];
 }