在新视图中保留相同的选项卡栏

时间:2013-10-07 06:09:24

标签: ios objective-c tabs

我是关于IOS开发的新手,所以我真的需要帮助解决这个问题。我一直在一个程序中工作,其中有一个滑动条和一个标签栏。但是,当我单击滑动条中的某个项目时,它会转到新视图,并且标签栏会消失。我尝试将新视图嵌入到导航控制器中,并在我的标签栏控制器a之间添加推送segue到新视图..但仍然不会显示标签栏。

在新视图中,如何保留或使用现有标签栏?所以,它会在新视图中可见。

谢谢!非常感激您的帮忙。 :)

2 个答案:

答案 0 :(得分:0)

首先,你必须执行推送,而不是模态。然后,您可以在推送的视图控制器中使用此方法hidesbotTombarWhenPushed,这应该可以解决问题。

如果没有,也许你可以澄清更多或发布一些代码:)

答案 1 :(得分:0)

这可能是因为您没有将tabview控制器添加为 AppDelegate 中窗口的根视图控制器。检查下面的示例代码

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
    searchController = [[SearchController alloc]initWithNibName:@"SearchController" bundle:nil];
    navCtrl1 = [[UINavigationController alloc]initWithRootViewController:viewController];
    navCtrl2 = [[UINavigationController alloc]initWithRootViewController:searchController];
    NSMutableArray *viewControllersArray = [[NSMutableArray alloc]init];
    [viewControllersArray addObject:navCtrl1];
    [viewControllersArray addObject:navCtrl2];
    tabController = [[UITabBarController alloc]init];

    tabController.viewControllers = [NSArray arrayWithObjects: navCtrl1 ,navCtrl2,nil];
    self.window.rootViewController = tabController;
    [self.window makeKeyAndVisible];
    return YES;

}