我正在努力解决一个看似简单的问题,但它正在使应用程序运行大小为30-35 MB。该应用已启用ARC。这是场景。
1)我从我的方法中调用UIViewcontroller
(viewController实例是方法的本地实例)&将其推送到NavigationController
后我将本地实例设置为nil。
btMapViewController *routeMap = [[btMapViewController alloc]init];
[routeMap setSourcLocation:[txtsource text]];
[routeMap setDestinationLocation:[txtDestination text]];
[routeMap setNightFareOn:addNightCharge];
[self.navigationController pushViewController:routeMap animated:YES];
routeMap = nil;
2)新推出的控制器初始化MKMapView
&绘制路线。该应用程序现在运行在35-40 MB的内存上,是第1步之前运行的5倍。
@interface btMapViewController ()
@property(nonatomic, strong) MKMapView *mapView;
@end
3)现在,如果我弹出UIViewcontroller
(步骤1中加载的那个),应用程序将在30-34 MB的内存上运行。
我检查内存跟踪,清楚。然后谁拿着记忆?
MKMap是接口实现的一部分导致了这个问题,还是我应该将它作为私有btMapViewController
类。 ?