我是否必须在我的 UIKit 应用程序中保留放入视图中的所有值的副本



我有一个视图控制器,其中的视图是从NIB加载的。据我了解,控制器可以随时从内存中卸载视图。例如,假设我的应用程序进入后台。

如果我有值,例如文本字段中的文本,则在卸载视图时,这些值将丢失。或者,我可能希望在加载视图之前设置这些值,在这种情况下,我的插座未设置,我还无法执行此操作。

因此,我是否需要在用户界面中保留所有值的卷影副本,以便我可以在 viewDidLoad 中重新设置它们:如果视图被卸载然后再次加载?

还是我做事方式不对?

如果应用程序进入后台,请实现保存和还原应用程序的方法。 UIApplication将让您知道焦点何时在以下UIApplicationDelegate方法中发生更改:

– applicationDidBecomeActive:
– applicationWillResignActive:
– applicationDidEnterBackground:
– applicationWillEnterForeground:

有关更多详细信息,请参阅帮助。

忘记了内存警告...解决方案取决于具体情况。根据我的经验,当涉及到删除可见视图以清除一些内存时,您不想实现恢复机制,而是测试内存泄漏、观察内存分配、优化内存管理或重新考虑设计。

最新更新