0
我有一个MKMapView,我在它上面显示一个MKAnnotaionView。我的问题是,当我第一次点击AnnotationView时,mapView:didSelectAnnotationView
被调用,但如果再次点击它,什么都不会发生。这是为什么发生?mapView:didSelectAnnotationView只被触发一次
我有一个MKMapView,我在它上面显示一个MKAnnotaionView。我的问题是,当我第一次点击AnnotationView时,mapView:didSelectAnnotationView
被调用,但如果再次点击它,什么都不会发生。这是为什么发生?mapView:didSelectAnnotationView只被触发一次
- (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)aView
{
indexPathTag=aView.tag;
[mapView deselectAnnotation:aView.annotation animated:YES];
}
- (void)mapView:(MKMapView *)mapView didDeselectAnnotationView:(MKAnnotationView *)aView
{
}
当didSelectAnnotationView火灾,它选择在某种程度上其实标记注释。然后,当您再次单击它时,代理功能不会触发,因为它已被选中。一旦完成了所需的任务,您必须通过调用以下函数来手动取消注释。所以你必须添加[mapView deselectAnnotation:aView.annotation animated:YES];在didSelectAnnotationView委托方法中。
它的工作,非常感谢=) – user2037296
最欢迎:) –
但如果你想在地图视图中点击空白区域,这将无法正常工作。 – user1019042