如何阻止用户与我当前的位置信息交互?我有这样的问题:我的地图上有很多针脚,如果它们很接近并且它们位于“我当前的位置”引脚附近,那个引脚会点击我要阻止的点击事件。我不希望显示泡泡“当前位置”。 我知道这是* pinView.canShowCallout = NO;但我怎么知道我的位置是什么针? 感谢
答案 0 :(得分:0)
这应该可以满足您的需求..
-(void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view{
if ([annotation isKindOfClass:[MKUserLocation class]]) {
view.canShowCallout=NO;
}
}
让我知道它是否有效.. :)
答案 1 :(得分:0)
这不起作用,因为你需要选择它至少一个来解决它,但是无论如何它还是非常有助于搜索起点:) 我用这段代码做了:
- (void)mapView:(MKMapView *)mapView didAddAnnotationViews:(NSArray *)views
{
for(int i = 0; i< [views count]; i++)
{
if([[[[views objectAtIndex:i] class] description] isEqualToString:@"MKUserLocationView"])
{
((MKAnnotationView*)[views objectAtIndex:i]).canShowCallout = NO;
}
}
}
你必须找到它并应用它。
你也需要这样说:
if ([annotation isKindOfClass:[MKUserLocation class]]) {
[mapView viewForAnnotation:annotation].canShowCallout = NO;
return [mapView viewForAnnotation:annotation];
}
in: - (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation