当我通过将showsUserLocation属性设置为NO来隐藏用户在MKMap实例上的位置时,我看到报告了一些崩溃。原因是SIGSEGV,以下是我在报告的堆栈跟踪中看到的内容。
不幸的是,我无法在我的设备上重现它,但我想知道是否有人之前曾经历过这个,因为它是一个相当奇怪的错误。四处搜索,我发现了这篇文章,Show Current User Location with MKMapView?,但似乎还没有真正的解释。
MapKit _contains(objc_object*, MKQuadTrieNode*) + 10
MapKit -[MKQuadTrie contains:] + 25
MapKit -[MKAnnotationManager _removeAnnotation:updateVisible:removeFromContainer:] + 51
MapKit -[MKAnnotationManager removeAnnotation:] + 29
MapKit -[MKMapView(UserPositioning) stopUpdatingUserLocation] + 117
我的代码非常简单。
- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
_map.showsUserLocation = NO;
}
请注意,所有崩溃似乎都来自运行iOS 7.0.3和7.0.4的各种设备。