gpt4 book ai didi

ios - 转到另一个选项卡中的详细 View Controller ?

转载 作者:行者123 更新时间:2023-11-28 21:33:28 27 4
gpt4 key购买 nike

我有一个包含多个标签页的应用程序。在一个选项卡上,我的用户可以选择一个按钮,将他们带到另一个选项卡,但那里将是一个详细 View Controller 。

所以我在选项卡 1 上有一个按钮,用户可以通过该按钮转到第二个选项卡。

在选项卡 2 上,我有一个 UINavigationController,其中一个 UIViewController 设置为 rootViewController,我需要在其中登陆详细信息 UIViewController

我不知道如何以正确的方式做到这一点。

我可以在第二个选项卡的 rootViewController 中创建一个静态(或 class)变量,它会告诉我是否需要推送 detailViewController。

但我有多个详细 View Controller ,这意味着如果我切换到正确的选项卡,我可以转到详细 View Controller ,这意味着在我返回到该 Root View Controller 之前,该 Root View Controller 中的静态变量无关紧要.

关于如何改进设置的任何想法? (我为每个选项卡使用单独的 Storyboard,以减少合并冲突)

最佳答案

在您从 tab1 中单击按钮时调用此方法。这会将您的 DetailViewController 添加到第二个选项卡的导航堆栈中。

#pragma mark- Injecting middle view controller

-(void)showDetailViewControllerInjectingMiddleViewController {

// get navigation controller for your 2nd tab

UINavigationController *navigationController = [[((UITabBarController *)self.window.rootViewController) viewControllers] objectAtIndex:1]; // 1 is for second tab
NSMutableArray *controllers = [navigationController.viewControllers mutableCopy];

[controllers addObject: [self prepareMiddleViewController]];
[controllers addObject:[self prepareDestinationViewController]];

[navigationController setViewControllers:controllers animated:NO];

[self.tabBarController setSelectedIndex:1];

}


-(UIViewController *)prepareMiddleViewController {

UIViewController *rootViewController = [self.storyboard instantiateViewControllerWithIdentifier:rootViewIdentifier];
return rootViewController;

}

-(UIViewController *)prepareDestinationViewController {

UIViewController *detailViewController = [self.storyboard instantiateViewControllerWithIdentifier:detailViewIdentifier];
return detailViewController;

}

关于ios - 转到另一个选项卡中的详细 View Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34881657/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com