失效后VC的视图仍然存在

时间:2014-09-11 17:45:31

标签: ios objective-c

我有一个非常简单的VC层次结构,其中应用程序的窗口有一个rootVC导航控制器,并且它的视图控制器在堆栈中。

要求是当用户进入后台(锁定按钮或主页按钮)时,VC层次结构应该被“扔”到垃圾箱中。这样当我们下次进入前景时我们重新开始并重建它(内部)。

在applicationDidEnterBackground处理程序的appDelegate中我正在做这个

UIViewController *yellowVC = [[UIViewController alloc] init];
yellowVC.view.backgroundColor = [UIColor yellowColor];

((UINavigationController *)self.window.rootViewController).viewControllers = @[yellowVC];

然而,当再次前进时,由于某种原因,我看到前一个最顶层控制器的内容大约一秒钟左右。

为什么? AFAIK当我替换viewControllers数组时,它被解除分配。

这是操作系统正在制作的截图吗?我发现很难相信它仍然是最顶级的VC。

如何摆脱烦恼?

顺便说一句。它是iOS 7.1和模拟器。

1 个答案:

答案 0 :(得分:-1)

也许,你可以在退出时完全退出你的应用程序吗?

打开您的info.plist文件

添加密钥UIApplicationExitsOnSuspend或选择Application does not run in background

将新密钥设置为YES或填写复选框