iOS应用程序在后台保存时返回rootViewController

时间:2018-03-31 05:47:43

标签: ios memory-management uinavigationcontroller background-process rootviewcontroller

我的iOS应用程序在后台保留更长时间后返回rootViewController。 为了证明我有以下图片 enter image description here

我一直导航到ViewControllerC并将应用程序保留在后台,当我返回应用程序时说30分钟后,应用程序显示了rootViewController,即ViewControllerA。

我希望它保留在ViewControllerC上,因为它保留在Whatsapp中。我知道当系统内存不足时我的应用程序(空闲应用程序)将从内存中删除,因此当我打开应用程序时,它将带我回到指定的初始View控制器。但是为什么whatsapp不会发生这种情况呢?

1 个答案:

答案 0 :(得分:1)

Apple为这种情况提供了解决方案:UIViewController和App Delegate一起使用允许您保存和恢复状态的方法。当应用程序进入后台时,将保存当前配置(视图控制器的视图显示)。这样,即使应用程序退出,当它重新启动时,它也可以在用户看到之前返回到该配置。因此,从背景和退出回来看起来就像从背景中回来一样。

有关详细信息,请参阅Apple的文档。这是一个很好的起点:

https://developer.apple.com/library/ios/featuredarticles/ViewControllerPGforiPhoneOS/PreservingandRestoringState.html