仅在iOS7中显示视图控制器会导致崩溃

仅在iOS7中显示视图控制器会导致崩溃,ios,objective-c,Ios,Objective C,我只在设备上有这个崩溃,而不是在模拟器上 我有一个视图控制器,名为main,其中是根视图: delegate.window.rootViewController=mainV; 此视图A有一个容器,可将另一个视图控制器加载到其中 稍后,我想展示一些视图控制器来显示一些提示,我是通过从视图控制器A展示它来实现的,因此它应该位于A(及其容器)之上: 它工作得很好,但当我试图忽略它时,我会崩溃: Presenting view controllers on detached view contr

我只在设备上有这个崩溃,而不是在模拟器上

我有一个视图控制器,名为
main
,其中是根视图:

  delegate.window.rootViewController=mainV;
此视图A有一个容器,可将另一个视图控制器加载到其中

稍后,我想展示一些视图控制器来显示一些提示,我是通过从视图控制器A展示它来实现的,因此它应该位于A(及其容器)之上:

它工作得很好,但当我试图忽略它时,我会崩溃:

 Presenting view controllers on detached view controllers is discouraged 
我想这是因为我有一个容器,里面有一个控制器,它试图呈现另一个视图

我希望保留这个层次结构,因为它最适合设计,容器更改控制器,并且在所有控制器之上都有一些指令。我如何预防这个问题

我试过这个:

  [self.view.window.rootViewController presentViewController:self.ins animated:YES completion:nil];
这将导致另一次崩溃,并显示相同的消息。 它不会在模拟器中发生(为什么?是因为它的
iOS7
在设备上吗?)

编辑:

如果我不把任何东西装到视图A中的容器中,它工作得很好。当提交的文件位于容器上方时,他的问题就会出现。

我解决了我的问题


当你展示一个视图控制器时,在这个视图中,有一个容器视图,加载它自己的视图控制器,你有一个分离的控制器,这是iOS7不接受的,但iOS8接受的。

你是展示旧的视图控制器而不是放弃新的视图控制器吗?我不确定你是否接受了。我有一个视图控制器,他一直活着。他也有一个容器视图。这是另一种观点。就这样。当我删除显示的视图时,会发生崩溃。请检查我的编辑。您如何解除显示的控制器?这种情况不会导致崩溃。在容器控制器上显示控制器是非常好的。
  [self.view.window.rootViewController presentViewController:self.ins animated:YES completion:nil];