从app delegate打开子(非根)控制器

时间:2017-05-18 13:35:42

标签: swift uiviewcontroller uinavigationcontroller

我正在尝试使用以下结构从深层链接打开视图控制器:

# Regular navigation:
AppDelegate -> A (root) -> B -> C

# Deeplink navigation to a specific controller:
AppDelegate -> B (child of A)

我还想允许用户使用后退导航返回到根A(即使我必须在点击后创建它)

控制器A是复杂的位置监听器和视图的混合,因此我不希望在打开B之前将其实例化。

1 个答案:

答案 0 :(得分:0)

如果在Controller A中的viewWillAppear()中添加位置监听器,则可以在不设置监听器的情况下实例化Controller。 然后,您可以推送[ControllerA(), ControllerB()]作为导航viewControllers并构建导航堆栈。