ios - Objective-C : Add/Perform multiple segue in navigation controller

标签 ios objective-c uinavigationcontroller segue

我正在实现一个有 6-7 个屏幕流入的应用程序功能。用户可以在任何屏幕上离开/关闭流程。

但是当用户再次申请时,他们应该跳转到他离开的最后一个屏幕,并且他可以回到之前的屏幕。

例如:我开始申请申请并完成到第 4 个屏幕并关闭。再次申请,我必须直接跳转到第 4 个屏幕,并且还能够从堆栈返回到第 3->2->1 个屏幕。

当前代码:

Storyboard 中屏幕 1-7 的 Segue identifires 是“screen1”、“screen1” ... “screen7”

来自 HomeScreen.m

-(void)toPersonalApplication {

    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Personal" bundle:nil];
    ScreenOne *screenOne = [storyboard instantiateViewControllerWithIdentifier:@"screenOne"];
    UINavigationController* nav = [[UINavigationController alloc] initWithRootViewController:screenOne];
    [self presentViewController:nav animated:YES completion:nil];
}

检查用户是否已经开始一个应用程序:

On ScreenOne.m

   - (IBAction)btnNextClick:(id)sender {

        if (doneProcessTill == 4) {

        // Should be execute something like this here
        // [self performSegueWithIdentifier:@"screen2" sender:self];
        // [self performSegueWithIdentifier:@"screen3" sender:self];
        // [self performSegueWithIdentifier:@"screen4" sender:self];
      }

    }

感谢您的建议! 谢谢

最佳答案

正如我在评论中所述,解决方案可能如下所示:

- (void)toPersonalApplication {
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Personal" bundle:nil];

    NSMutableArray *viewControllers = [NSMutableArray array];
    for (NSInteger i = 1; i <= doneProcessTill; ++i) {
        UIViewController *viewController = [storyboard instantiateViewControllerWithIdentifier:[NSString stringWithFormat:@"screen%ld", (long)i]];
        [viewControllers addObject:viewController];
    }

    UINavigationController *navigationController = [UINavigationController new];
    navigationController.viewControllers = viewControllers;

    [self presentViewController:navigationController animated:YES completion:nil];
}

关于ios - Objective-C : Add/Perform multiple segue in navigation controller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56538079/

相关文章:

objective-c - 从 UISearchBar 对 NSArray 执行搜索

ios - 自定义按钮回推

ios - 导航 Controller 干扰 TabBar Controller

ios - 将数据加载到 UIPIckerView 中?

ios - 更改 UIView 的自动约束高度

ios - 让阴影慢慢向下滚动

objective-c - RestKit .2 将图像发布到 Web 服务 - 空实体错误

ios - 在 GCD 串行队列上安排和使 NSTimers 失效是否安全?

ios - 在 UIDatePicker ios 中设置默认初始时间

ios - 当转到另一个 ViewController 时,TabBar 嵌入式 NavigationController 栏消失