Les meilleures pratiques pour afficher POI dans MapKit iPhone?

voix
0

En supposant que j'ai une base de données de POI avec leurs coordonnées respectives (longitude et latitude). Quelle serait la façon « standard » pour afficher les POI sous forme d'annotations autour de l'emplacement actuel de l'utilisateur? Élaborer:

  • Compte tenu d'un niveau de zoom, je suppose que je dois chercher dans la base de données pour tous les POI dont la distance à l'emplacement actuel <un certain seuil, puis créer des annotations pour eux. Ou est-il une façon plus intelligente?
  • Si l'utilisateur effectue un zoom avant / arrière, déplace la carte ... je vais devoir refaire à nouveau la chose?
  • Il semble que MapKit a un mécanisme d'annotations cache / réutilisation. Dois-je créer beaucoup d'entre eux tout de suite et de laisser MapKit décide de rendre lorsque les changements de région visible? Je suppose que cela rendrait la transition plus lisse, mais consomme plus de mémoire. Quelle est votre expérience avec cela?

Merci.

Créé 11/04/2010 à 04:07
source utilisateur
Dans d'autres langues...                            


1 réponses

voix
1

En fait, en se fondant sur la distance entre l'emplacement actuel et les points d' intérêt n'est pas la bonne approche: distances d' évaluation prend du temps, vous feriez mieux de compter uniquement sur la région affichée par votre carte (propriété region) et vérifiez que vos POI sont intégrés dans cette Région.

Lors d'un zoom avant / arrière, la région change, vous pouvez refaire la même chose.

Voir ma réponse ici: MKMapView charger toutes les vues d'annotation à la fois (y compris ceux qui sont en dehors du courant rect)

Ce mec tente d'utiliser la mise en cache des annotations et ma réponse peut vous aider dans votre cas.

Pour vérifier si votre POI est la région affichée, j'ai posté un morceau de code qui peut aider ici: Développement iPhone - Est - Pin Annotation dans une région visible Carte

Créé 11/04/2010 à 10:24
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more