内存警告处理:
- (void)viewDidUnload {
[super viewDidUnload];
//1.释放子视图
Release(_TableView);
//2.释放数据
Release(_data);
}
只要收到内存警告就会调用这个方法,ios6.0之后或者之前都会调用didReceiveMemoryWarning,他不会把view设置为nil. 但ios6.0之前他会自动调用viewDidUnload,在调用之前他会把self.view设置为nil. 所以我们做内存警告兼容的话,在父类中判断。 在父类中添加。
//做内存警告版本兼容
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
//获取当前系统版本
float version = [[UIDevice currentDevice].systemVersionfloatValue];
if (version >= 6.0) {
//如果满足条件,说明self.view上级父视图中没有window,说明self.view没有在界面上显示
if (self.view.window == nil) {
//1.释放self.view
self.view = nil;
//ios6.0之前使用的方法到ios3.0
[self viewDidUnload];
}
}
}
好球网