它如何工作didReceiveMemoryWarning iOS 6
我不知道关于didReceiveMemoryWarning
太多的信息,但考虑到我在其他文章上阅读的东西,并在文档中寻找,我已经看到,在iOS 5的情况下,任何不可见的视图控制器将转储其视图,但万一的iOS 6的文档( 文档说,默认的实现“退出”,我不知道我应该怎么理解这一点。
我一直在做模拟低内存警告的iOS模拟器的一些testing,我欣赏(在iOS 5),如果我在堆栈中的第二个视图,我模拟低内存警告,什么也没有发生目前的观点,但如果我回到以前的观点发布和viewDidLoad再次被调用,但我在iOS 6的情况下没有任何以前的意见被释放,我的意思是这个,这是我的问题:什么是iOS 6的didReceiveMemoryWarning
的后果,如果意见没有公布,我是否应该担心我不考虑的其他事情? 即使视图没有被释放的东西,像类variables(例如NSMutableArray)可以被释放?
你只有更多的控制,因为views are no longer purged under low-memory conditions and so this method [viewDidUnload] is never called
( Deprecated UIViewController Methods )。
如果这个视图的构build费用昂贵,而不是渴望记忆,那么你可能不会释放它。 据我所知,如果发生内存警告,iOs将不会释放任何东西,这个决定完全取决于您,使用didReceiveMemoryWarning
或其他通知技术(请参阅观察低内存警告部分 )。
WWDC 2012会议236:iOS上的视图控制器的发展可能会让你感兴趣。