我有带MKPlacemark的MKMapView。在显示地图时,我正在显示地标标记。 到目前为止,一切都很好。
我想在用户触摸时禁用隐藏标题。
我尝试添加
myMapView.userInteractionEnabled = NO;
myMapView.multipleTouchEnabled = NO;
这有帮助,但完全禁用与地图的互动。我希望能够放大/缩小并移动地图。
答案 0 :(得分:0)
创建自定义注释,而不是创建PIN。在自定义注释中,使用要向用户显示的所有信息创建视图,并禁用位置标记。因此,您不会想要处理水龙头,但是您将显示附加到一个纬度/经度的所有静态/动态信息。
答案 1 :(得分:0)
以下代码完成了这个技巧
for (UIGestureRecognizer *g in [myMapView gestureRecognizers])
[myMapView removeGestureRecognizer:g];
答案 2 :(得分:0)
在MapKit Delegate方法中尝试下面的代码
- (MKAnnotationView *)mapView:(MKMapView *)mV viewForAnnotation:(id <MKAnnotation>)annotation {
static NSString *defaultPinID = @"com.invasivecode.pin";
MKPinAnnotationView *pinView = (MKPinAnnotationView *)[yourMapView dequeueReusableAnnotationViewWithIdentifier:defaultPinID];
pinView = [[[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:defaultPinID] autorelease];
if (annotation == yourMapview.userLocation)
return nil;
pinView.pinColor = MKPinAnnotationColorRed;
pinView.userInteractionEnabled = NO;
//pinView.canShowCallout = YES;
pinView.animatesDrop = YES;
return pinView;
}
这里如果你使用你的地标与这个逻辑可能它的工作.... 希望,这有助于你...... :)