Richiesto su iOS per mappa mapBox. (Non sto parlando di MKMapView) come possiamo rilevare se SingleTap è stato toccato o annotazione su mapView? Ho bisogno che singleTap venga gestito solo su un'area vuota della mappa (senza pin), e ha fatto sì che SelectAnnotation chiamasse quando tocco su un pin.come posso rilevare se è stato toccato singleTap o annotazione su mapView di mapbox?
Ma ho trovato su Android abbiamo metodo come questo
mapboxMap.setOnMapClickListener(new MapboxMap.OnMapClickListener() {
public void onMapClick(@NonNull LatLng point) {
Toast.makeText(getActivity(),"on Tap "+point.getLatitude(),Toast.LENGTH_LONG).show();
}
});
e insieme a questo
mapboxMap.setInfoWindowAdapter(new MapboxMap.InfoWindowAdapter() { ... })
visualizzerà l'annotazione.
Non abbiamo lo stesso tipo di concetto in iOS?
Il problema reale è in iOS è, quando aggiungo singleTapGesture
su MapView di Mapbox
UITapGestureRecognizer *singleTapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];
[self.mapView addGestureRecognizer:singleTapGesture];
il metodo delegato di MapView di mapbox non chiamerà.
- (nullable UIView <MGLCalloutView> *)mapView:(MGLMapView *)mapView calloutViewForAnnotation:(id <MGLAnnotation>)annotation;
per assicurarsi che il metodo delegato deve chiamare, quindi non devo usare singleTapGesture
Qui la situazione è questo o quello, ma come per me bisogno avevo bisogno di entrambe le cose.
In attesa di qualsiasi soluzione. Grazie,
INASIR Mostrami la tua codifica completa – user3182143