Nar*_*tri 0 memory-management objective-c mkmapview ios
我MKMapView在Objective-C中使用.应用程序占用45MB内存,但当MKMapView出现内存使用量增加到110 MB.这不是好iPhone 4和iPhone 4S.
请建议我优化内存的代码结构.
好好处理MKMapKit需要注意内存管理.特别是如果您正在使用UITabbarController和设置MapView任何视图控制器.
如果您需要MKMapKit在您的应用程序中使用,我建议您MapView在viewWillAppearSuperview中初始化和删除viewDidDisappear.此外,您需要在从Superview中删除之前删除它的委托mapView.delegate = nil并制作MapView = nil.
Objective-C的
- (void)viewDidDisappear:(BOOL)animated {
[super viewDidDisappear:animated];
mapView.delegate = nil;
[mapView removeFromSuperview];
mapView = nil;
}
Run Code Online (Sandbox Code Playgroud)
迅速
override func viewDidDisappear(animated: Bool) {
super.viewDidDisappear(animated)
mapView.delegate = nil
mapView.removeFromSuperview()
mapView = nil
}
Run Code Online (Sandbox Code Playgroud)
通过这样做,地图占用的所有内存都是免费的.
请不要加MapView在你ViewController的故事板或XIB.以编程方式创建MapView.
希望它可以帮助您使用MKMapKit进行内存管理.
| 归档时间: |
|
| 查看次数: |
3034 次 |
| 最近记录: |