2010-05-11 11 views
6

Je souhaite créer une application qui imite partiellement le comportement de l'application cartographique standard. Cela s'est avéré difficile. Tout d'abord, je ne comprends pas comment vous pouvez déplacer les annotations. Comment faites-vous exactement cela?iPhone - MapKit - Recherche d'emplacements et d'annotations mobiles

Deuxièmement: comment rechercher des emplacements?

Répondre

15

annotations en mouvement

Je suppose que vous êtes après le comportement de Maps.app où vous appuyez sur et tenez à une broche pour le déplacer librement. Autant que je sache, il n'y a pas de manière intégrée de déplacer les annotations. Puisque les annotations sont des sous-classes de UIView, vous pouvez les dessiner où et comme vous le souhaitez. Vous pouvez par exemple détecter un tap-n-hold sur l'annotation, et lorsque vous avez "déverrouillé", modifiez la valeur centerOffset de votre annotation pour la déplacer au toucher. Lorsque l'utilisateur lâche la vue, vous pouvez noter la position sur l'écran et utiliser la méthode MKMapViewconvertPoint:toCoordinateFromView: pour obtenir les coordonnées que la broche a été libérée.

Recherche emplacement

Ce que vous recherchez est appelé avant géocodage. Malheureusement, MapKit vient seulement avec le géocodage inverse (le processus de conversion des coordonnées GPS en pays/ville/rue/etc). Il existe cependant plusieurs alternatives. Voici quelques façons:

Notez que de nombreuses API géocodage sont sous licence Creative Commons, ou des licences similaires.

Questions connexes