Ios 视图不在窗口层次结构中

Ios 视图不在窗口层次结构中,ios,ios8,keywindow,Ios,Ios8,Keywindow,我在最新的测试版iOS 8上遇到了一个奇怪的问题。 与iOS7相反,我的视图正在从窗口层次结构中消失——基本上,我正在某个时候用一个新的视图替换我的UINavigationController。 这段代码在iOS 8之前没有任何问题,你知道为什么吗? 如果我将UINavigationController添加到keyWindow-它实际上绕过了这个问题,视图实际上“保留”在窗口层次结构中: [[[UIApplication sharedApplication] keyWindow] addSubv

我在最新的测试版iOS 8上遇到了一个奇怪的问题。 与iOS7相反,我的视图正在从窗口层次结构中消失——基本上,我正在某个时候用一个新的视图替换我的
UINavigationController
。 这段代码在iOS 8之前没有任何问题,你知道为什么吗? 如果我将
UINavigationController
添加到
keyWindow
-它实际上绕过了这个问题,视图实际上“保留”在窗口层次结构中:

[[[UIApplication sharedApplication] keyWindow] addSubview:myUINavigationController];

但我不喜欢这种“黑客行为”。

我想你要找的是AppDelegate的didFinishLaunchingWithOptions方法:

self.window.rootViewController = myUINavigationController;

您以前是怎么做的?我正在分配一个新的视图控制器,然后使用presentViewController来显示它。您是否尝试过将新的视图控制器分配给windows的
rootViewController
属性?不,我会尝试。但要明确一点-您的意思是不使用presentViewController?实际上,这个UINavigationController不应该是我的应用程序的根视图控制器-我们还有一些其他的viewconroller应该是根视图控制器。正如我在上面的评论中所写的,UINavigationController不应该是my app的根视图控制器-我们还有一些其他viewconroller应该是根视图控制器。这有什么意义?您的用例是什么?为什么不以模式显示它呢?我实际上使用presentModalViewController(弃用后的presentViewController)以模式显示它,但由于某种原因,视图从窗口层次结构中删除了-注意,在较低的iOS版本中情况并非如此…另外,在iOS8中显示模式视图控制器对我来说也很好。显示一些代码,您可能在其他地方出错。我的意思是我使用的是presentViewController,而不是presentModalViewController