刚刚在 MapKit 中遇到了一个错误,想看看社区正在经历什么。将 MKUserTrackingBarButtonItem 添加到 UIToolBar 时,我看到在切换到另一个 viewController 时地图没有从内存中释放(尽管我看到 dealloc 正在触发)。
谁能确认他们看到了这种行为?如果我不添加 MKUserTrackingBarButtonItem,我的测试显示地图发布正确。使用 iOS7,使用 Instruments/Leaks 进行测试。
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
MKUserTrackingBarButtonItem *userTrackingBarButtonItem = [[MKUserTrackingBarButtonItem alloc] initWithMapView:self.mapView];
[userTrackingBarButtonItem setAction:@selector(track:)];
UIBarButtonItem *flexibleSpaceBarButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
[self setToolbarItems:[NSArray arrayWithObjects:flexibleSpaceBarButton, userTrackingBarButtonItem, flexibleSpaceBarButton, nil] animated:YES];
[self.navigationController setToolbarHidden:NO animated:NO];
}