处理内存警告 received memory warning

iOS6.0及其以后,viewDidUnload不再有用,收到low-memeory时系统不会释放Views。

iOS6.0及以上版本的内存警告:

调用didReceiveMemoryWarning内调用super的didReceiveMemoryWarning调只是释放controller的resouse,不会释放view

处理方法:

-(void)didReceiveMemoryWarning

{

[super didReceiveMemoryWarning];//即使没有显示在window上,也不会自动的将self.view释放。

// Add code to clean up any of your own resources that are no longer necessary.

// 此处做兼容处理需要加上ios6.0的宏开关,保证是在6.0下使用的,6.0以前屏蔽以下代码,否则会在下面使用self.view时自动加载viewDidLoad

if ([self.view window] == nil)// 是否是正在使用的视图

{

// Add code to preserve data stored in the views that might be

// needed later.

// Add code to clean up other strong references to the view in

// the view hierarchy.

self.view = nil;// 目的是再次进入时能够重新加载调用viewDidLoad函数。

}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容