解雇模态呈现的ViewController总是会让我回到root

时间:2017-09-28 03:31:00

标签: ios swift uiviewcontroller uinavigationcontroller uitabbarcontroller

我有几个月有这个问题有多个观点,Apple都提供了像故事板中的ImagePicker和VC。

我认为它与我们在大多数视图中都有标签栏控制器和导航控制器的底层视图有关。

奇怪的是,使用pod中的一些开源视图不会导致此错误。

所以我在导航控制器上有两个深度视图,并在present(vc, animated: true, completion: {})

上以模态方式显示另一个视图

像魅力一样工作,现在用dismiss(animated: true, completion: nil)解雇那个视图会把我一直推回到导航控制器的初始视图或根视图,之前都发生过,这取决于所呈现的视图。

更新
构建一个试图重现行为的示例项目但失败了。绘制简化图以更好地解释当前的错误行为。 还注意到,如果我在Fandom视图中提前一步调用post视图,它将按预期工作。

sketch

1 个答案:

答案 0 :(得分:0)

在我的情况下,我使用的是UITabBarController,我在UITabBarController的viewWillAppear中编写了代码

self.selectedIndex = 2

所以当我从任何父级为UITabBarController的控制器中呈现任何东西时,当我忽略它会自动打开UITabBarController的第三个选项卡时。

也许你明确地编写了任何代码来选择TabBar的特定索引。

这可能对您或其他任何人有用。