1

当我按下 MKUserTrackingBarButtonItem 来跟踪用户位置然后离开视图时,就会出现问题。

Profiler 显示僵尸:

[CLLocationManager onClientEventLocation]

没有 CLLocationManagerMKMapView,我在退出时将其设置为 nil :

    - (void)viewDidUnload
{
    [self setMapToolbar:nil];
    mapView.delegate = nil;
    [self setMapView:nil];

    [super viewDidUnload];
}
4

1 回答 1

2

我终于明白 MKMapView 的 showUserLocation 方法创建了一个 CLLocationManager 的实例。

通过在退出视图时关闭 userLocation 轻松避免此僵尸:

     - (void)viewWillDisappear:(BOOL)animated 
{ 
[mapView setShowsUserLocation:NO]; 
[super viewWillDisappear:animated]; 
}
于 2011-11-13T07:24:41.257 回答