ios6.0内存警告的兼容处理 viewDidUnload 屏蔽
2013-05-15 09:51
429 查看
ios6.0内存警告的兼容处理 viewDidUnload 屏蔽
内存警告的兼容处理:.iOS6.0以前版本收到内存警告:
调用didReceiveMemoryWarning内调用super的didReceiveMemoryWarning会将controller的view进行释放。所以我们不能将controller的view再次释放。
处理方法:
-(void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// ios6.0以前,不做处理
}
-(void)viewDidUnload
{
// Release any retained subviews of the main view.不包含self.view
[super viewDidUnload];
}
iOS6.0,内存警告:
调用didReceiveMemoryWarning内调用super的didReceiveMemoryWarning调只是释放controller的resouse,不会释放view
处理方法:
-(void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// 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;// 目的是再次进入时能够重新加载
}
}
官方文档比较详情见
https://developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/ViewLoadingandUnloading/ViewLoadingandUnloading.html
转载:http://www.cocoachina.com/bbs/simple/?t125949.html
相关文章推荐
- IOS6.0以后APP对内存警告的处理
- viewDidUnload 和 viewWillUnload 被废弃之后的内存警告处理
- viewDidUnload 和 viewWillUnload 被废弃之后的内存警告处理
- IOS6.0以后APP对内存警告的处理
- iosLearningDiary_viewDidUnload 和 viewWillUnload 被废弃之后的内存警告处理
- IOS6.0以后APP对内存警告的处理
- IOS6.0以后APP对内存警告的处理
- IOS6.0以后APP对内存警告的处理
- iOS6.0以后App对内存警告的处理
- iOS6.0以后App对内存警告的处理
- iOS 6.0不同版本内存警告的统一处理
- IOS内存警告处理
- UIViewController的生命周期及iOS程序执行顺序 和ios6 处理内存警告
- 关于百度地图iOS中 paopaoView 警告的处理方法
- ios 处理内存警告<二>
- ios低内存警告处理
- iOS6,iOS5内存警告的兼容处理
- iOS当发生内存警告时的一些处理
- ios 内存警告处理
- didReceiveMemoryWarning-内存警告处理方法-iOS