MKPinAnnotationView отключить выделение / выделение, но не поднимать и перетаскивать
У меня есть MKPinAnnotationView, который я хотел бы иметь возможность долго нажимать и перетаскивать, но не касаться и выбирать. Иногда пользователь будет касаться только правильного пути (короткое касание на булавке), и булавка будет выделена (темнее) вместо того, чтобы поднимать и перетаскивать. Я использую перетаскивание, чтобы показать увеличительное стекло, поэтому оно немного разрушительно, когда пользователь касается булавки и перетаскивает, но ничего не происходит.
Могу ли я установить какой-либо флаг, который предотвращает выбор булавки и всегда перетаскивает?
Я попытался установить следующие флаги:
annotationView.selected = YES;
annotationView.canShowCallout = NO;
annotationView.highlighted = NO;
Что не мешает выбору. Я тоже пробовал листать .selected
в NO
, Я полагаю, я мог бы переопределить -(void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view
но я не уверен, что я мог бы вставить туда, чтобы обойти выбор. И нет -(BOOL)shouldSelectAnnotationView...
функция.
1 ответ
Скорее всего, вам придется разделить булавку на подклассы. Вот лучший пример, который я смог найти. Я не могу написать один, потому что я не на моем компьютере. https://github.com/j4n0/callout
Удачи.