我有一个自定义控件,类似于选项卡,可以显示许多控制器,其中一些控制器也具有我的选项卡和其他控制器,因此,我的应用程序使用了大量内存,因为每个控制器都存储在内存中。所以我想卸载不可见的控制器,但是我没有找到任何卸载UIViewController的方法。我该怎么做?
PS. 我不能使用UITabBarController,真的不行。
PS. 我不能使用UITabBarController,真的不行。
我知道这是一个旧的帖子,但可能对某些人有用。
您可以通过调用以下方法卸载视图控制器的视图:
[viewControllerWhoseViewYouWantToUnload didReceiveMemoryWarning];
从其父视图中删除视图控制器的视图并释放控制器。工作完成。
UIViewControllers不会在内存紧张时被卸载,只有它们的视图会被卸载。
这是在您自己的视图控制器的didReceiveMemoryWarning
方法中发生的,并且会在发生低内存警告时自动调用。
重写此方法并卸载任何可以在viewDidLoad
方法中重新创建的内容。