我有 MKMapView 和 MKPlacemark 就可以了。显示地图时,我正在显示地标的标题。到目前为止一切都很好。
我想在用户触摸它时禁用隐藏标题。
我试图添加
myMapView.userInteractionEnabled = NO;
myMapView.multipleTouchEnabled = NO;
这有帮助,但完全禁用了与地图的交互。我想留下放大/缩小和移动地图的可能性。
我有 MKMapView 和 MKPlacemark 就可以了。显示地图时,我正在显示地标的标题。到目前为止一切都很好。
我想在用户触摸它时禁用隐藏标题。
我试图添加
myMapView.userInteractionEnabled = NO;
myMapView.multipleTouchEnabled = NO;
这有帮助,但完全禁用了与地图的交互。我想留下放大/缩小和移动地图的可能性。
无需创建 PIN,而是创建您的自定义注释。在自定义注释中创建包含您要呈现给用户的所有信息的视图,并禁用地标。这样,您不应该处理水龙头,但您将显示附加到一个纬度/经度的所有静态/动态信息。
以下代码成功了
for (UIGestureRecognizer *g in [myMapView gestureRecognizers])
[myMapView removeGestureRecognizer:g];
在 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;
}
在这里,如果您将地标与此逻辑一起使用,它可能会起作用....希望,这对您有帮助... :)