我有一个 MKPinAnnotationView,我希望能够长按并拖动它,但不能点击并选择。有时,用户以正确的方式触摸(短按图钉),图钉将突出显示(变暗),而不是抬起和拖动。我使用拖动来显示放大镜,因此当用户触摸图钉并拖动但没有任何反应时,它会有点破坏性。
我可以设置某种标志来防止图钉被点击选择并始终拖动吗?
我尝试设置以下标志:
annotationView.selected = YES;
annotationView.canShowCallout = NO;
annotationView.highlighted = NO;
这不会阻止选择。我还尝试将 .selected
翻转为 NO
。我想我可以覆盖 -(void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view
但我不确定可以在其中放置什么来绕过选择。并且没有 -(BOOL)shouldSelectAnnotationView...
函数。
最佳答案
您很可能必须对引脚进行子类化。这是我能找到的最好的例子。我无法写一篇,因为我不在电脑前。 https://github.com/j4n0/callout
祝你好运。
关于ios - MKPinAnnotationView 禁用选择/突出显示,但不能抬起和拖动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18519590/