怎么能拖动MKPinAnnotationView引脚只有一个水龙头?

sea*_*apy 7 iphone mkpinannotationview mkmapview ios4

我添加MKPinAnnotationView和setDragAble.我的代码在这里

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation {
    MKPinAnnotationView *annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"pin"];
    [annotationView setDraggable:YES];
    annotationView.pinColor = MKPinAnnotationColorPurple;
    return [annotationView autorelease];
}
Run Code Online (Sandbox Code Playgroud)

好的,我可以拖针.

但有一个问题是它不只是一个水龙头.总是需要第二次点击.

当我第一次点击引脚被选中但无法拖动.当我再次点击它的可用拖动.

怎么了?我想只需一个拖动拖动像"Map.app"

sea*_*apy 17

重新解决这个问题.^^

我认为对于拖针,已经选择了引脚.

因此在初始化时选择了MKPinAnnotationView.

我的新代码.

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation {
    MKPinAnnotationView *annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"pin"];
    [annotationView setDraggable:YES];
    annotationView.pinColor = MKPinAnnotationColorPurple;
    [annotationView setSelected:YES animated:YES];
    return [annotationView autorelease];
}
Run Code Online (Sandbox Code Playgroud)

  • 我今天遇到了同样的问题,并提出了几乎相同的解决方案,除了我在委托的`mapView:didAddAnnotationViews:`方法中调用` - [mapView selectAnnotation:]`.似乎工作也一样. (4认同)