iOS/xcode - 如何从 UITabBarController 打开一个新的故事板并防止 UITabBar 消失?

iOS/xcode - How can I open a new storyboard from UITabBarController and keep the UITabBar from disappearing?

我一直致力于 link 从单个 UITabBarController 中提取多个故事板。我让它在我可以打开新故事板并显示初始 UIViewController 的地方工作,只有 UITabBar 在打开新故事板时消失。

这是我用来切换到新故事板的代码:

-(BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController
{
if ( [viewController isMemberOfClass:[ProfileRedirectViewController class]] )
    {
        UIStoryboard *sb = [UIStoryboard storyboardWithName:@"Profile" bundle:nil];
        UIViewController *vc = [sb instantiateViewControllerWithIdentifier:@"ProfileTableViewController"];


        [self.view.window.rootViewController presentViewController:vc animated:YES completion:nil];
        //[self.navigationController pushViewController:vc animated:false];

        return NO;
    }
    return YES;
}

我一直在玩 navigationController 版本,但它什么也不做,导致点击死机,日志中也没有错误。我一直在寻找这个问题的答案,也许我走错了路。我是 xcode 的新手,所以我很可能会遗漏一些明显的东西或使用不稳定的搜索词来寻求帮助。

当我们导航到主故事板中的任何其他视图时,UITabBar 工作正常,只有当我移动到下一个故事板时,我们才会丢失它。

非常感谢所有帮助!

您是在告诉视图 window 加载新的根目录,但您想要做的是让 UIBarTab 打开另一个故事板。看看他的post有一个很好详细的回答:Proper Way to Open a New Storyboard through UITabBarController