2016-08-12 5 views
0

Pour mapView, je le crée par self.view.addSubview(mapView!), donc je suppose que c'est pourquoi je ne peux pas remplacer la fonction touchesBegan pour détecter le point de contact. Il existe une fonction appelée didLongPressAtCoordinate dans mapView delegate, mais elle ne contient que des coordonnées et mapView comme argument.Comment obtenir le point pressé dans MapView. Google Maps SDK. Swift

func mapView(mapView: GMSMapView, didLongPressAtCoordinate coordinate: CLLocationCoordinate2D) { 

} 

Une suggestion?

Merci.

Répondre

0

Essayez d'utiliser UITapGestureRecognizer.

Pour la mise en œuvre, vous pouvez vérifier la solution donnée dans ce message SO - UIScrollView touchesBegan. En dehors de cela, l'explication et l'exemple de code donné dans ce blog - How to perform action when user taps on map using MapKit, Swift pourraient également aider.

+0

Salut. Merci de votre aide. Mais ne fonctionne toujours pas. J'ai créé une vue de défilement et j'ajoute MapView comme ceci: self.view.addSubview (mapViewTouchView) mapViewTouchView.addSubview (mapView!). Je pense que c'est parce qu'une fois la vue détectée, la fonction didLongPressAtCoordinate sera appelée en premier –