2017-04-06 51 views
-1

我在UINavigationController上使用set​View​Controllers函数来设置我的第一个根视图控制器,但viewControllers数组在调用后是空的。UINavigationController.set视图控制器导致一个空的viewControllers数组

我知道预计行为会在设置后立即在viewControllers阵列中看到视图控制器,即使存在动画也是如此,因此我不确定可能导致问题的原因。

setViewControllers([viewControllerToPresent], animated: true)

值得注意的是:它在应用程序启动时发生的事情,但我敢肯定后UINavigationController的加载和准备。

+0

我们可以看到一些代码,好吗? –

+0

感谢您的帮助。真的很难展示任何简洁的代码。它需要的是对奇怪UIKit行为的基本理解。如果你知道更多关于UIKit为何如此行为的信息,请参阅下面的答案。干杯! – bitwit

+0

甚至有人用“古怪的UIKit行为的强烈基本认识”看不懂你的头脑和解决未充分说明了问题。例如,您的解决方案如下提到一个模式是问题,但你的问题没有注意到模式演示(让玩单独_multiple_视图控制器)甚至等式的一部分。几行代码对于我们这些试图帮助你的人来说可能会有很长的路要走。只是要记住。 – nickgraef

回答

0

问题最终是试图作为navigationcontroller试图推的ViewController到堆栈(二者动画)

通过由1延迟模态的呈现以同时呈现的ViewController模态(教程幻灯片)其次,两个视图控制器都能够呈现而不会互相破坏。

会爱,如果任何人如果与UIKit的与动画的API不够熟悉而解释知道这个个为什么。如果我没有听到任何人的消息,我会接受我自己的答案,但如果我们将来得到更好的答案,我们会很乐意改变这一点。