美文网首页iOS 开发
处理内存警告 received memory warning

处理内存警告 received memory warning

作者: 严木木 | 来源:发表于2016-04-28 17:05 被阅读2017次

    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函数。

    }

    }

    相关文章

      网友评论

        本文标题:处理内存警告 received memory warning

        本文链接:https://www.haomeiwen.com/subject/wsjhrttx.html