首页 文章

iOS深层链接到特定的ViewController保留视图控制器堆栈

提问于
浏览
1

我正在为我的客户开发一个应用程序,他们希望能够从终止的应用程序深层链接到特定的视图控制器 . 这是当前的堆栈:

  • 启动屏幕

  • 启动画面(这是我们下载配置文件的地方)

  • VC1

  • VC2

  • VC3

  • VC4

  • VC5

客户端希望能够通过深层链接启动应用程序,并在Splash Screen完成配置文件下载后,导航到特定的视图控制器(VC1-VC5) . 问题是他们想要保留堆栈 . 所以我不能简单地从启动画面推送VC5,因为VC5需要能够比VC3回VC4而不是VC2等 .

处理这个问题的最佳方法是什么?任何帮助将不胜感激 . 提前致谢!

1 回答

  • 3

    您可以使用UINavigationController setViewControllers方法一次设置导航堆栈 . 只需创建每个视图控制器的实例,并将它们传递给您的导航控制器,如下所示:

    navController.setViewControllers([vc1, vc2, vc3, vc4, vc5], animated: true)
    

    请注意,这将覆盖当前导航堆栈中的所有视图控制器 . vc1将成为导航控制器的根vc .

相关问题