Ajouter des marqueurs de façon dynamique sur Google Maps v2 pour Android
quelles sont les possibilités pour ajouter des marqueurs de manière dynamique en fonction de la zone de la carte qui est montré?
J'ai beaucoup de marqueurs ou disons que mes marqueurs ont besoin de beaucoup de performance pour être rendus à la cause qu'ils sont personnalisés. J'ai mis en place maintenant, que seulement 40 marqueurs sont tirés lors d'un "camerachange" a été congédié. Donc en ce moment j'ai toujours rendu de 40 nouveaux marqueurs lorsque cameraposition a été changé.
J'ai lus sur le praticable et le gestionnaire, y a plus d'options? Quelqu'un sait laquelle de ces possibilités est le meilleur, de sorte que l'ui thread n'est pas bloqué?
avez-vous regardé AsyncTasks ou les Chargeurs?
Google Maps API Android v2 doit être utilisé sur le thread d'INTERFACE utilisateur.
Google Maps API Android v2 doit être utilisé sur le thread d'INTERFACE utilisateur.
OriginalL'auteur DieselPower | 2013-08-26
Vous devez vous connecter pour publier un commentaire.
Je voudrais suggérer à l'aide d'un regroupement de bibliothèques disponibles pour Google Maps API Android v2.
Android Cartes D'Extensions en dehors de clustering permet de faire beaucoup de travail pour vous. L'API est très similaire à l'officiel de la bibliothèque de Google.
Si vous ne souhaitez pas utiliser le clustering à tous, vous pouvez toujours atteindre votre objectif avec:
Clusterkraf se concentre principalement sur l'animation de clustering.
Android Cartes Utils de cette écriture n'a pas de clustering fusionnées dans la branche principale, mais vous pouvez voir clustering branche.
Si vous voulez coder vous-même, je peux vous proposer ces approches:
Marker
s seulement dansVisibleRegion
(même chose Android Cartes d'Extensions lorsque vous utilisez le code ci-dessus), par exemple de mon projet de démonstration ici: AddOnlyVisibleMarkersExampleActivity.javaMarker
s à l'aide deHandler
, exemple ici: AddMarkersInBackgroundExampleActivity.javaHey Maciej, j'ai réussi à importer votre bibliothèque dans android studio de projet 😉 Mais une question, quelle est la meilleure position pour l'ajout de marqueurs? J'ai ajouté des marqueurs (sans votre bibliothèque) en fonction de la zone visible (toujours extraire de la base de données locale) et de limiter à 40 marqueurs ... Devrais-je lire en une seule fois tous les databaseentries et laissez votre bibliothèque de faire le reste? Ou devrais-je maintenant également afficher uniquement les marqueurs visibles?
J'ai l'intention d'ajouter la gradle soutien tôt ou tard. Pour le chargement, il doit être préférable d'abandonner la gestion de la bibliothèque. Si vous utilisez plus que quelques centaines de personnes, je vous suggère d'utiliser
addMarkersDynamically
pour mieux UX.Juste pensé que je voudrais ajouter: dépendances { compiler 'com.androidmapsextensions:android-cartes-extensions:2.2.0' compiler 'com.google.android.gms:jouer-services-cartes:8.1.0' }
Lors de l'utilisation de
addMarkersDynamically
, il vous suffit d'ajouter tous les marqueurs viaGoogleMap.addMarker
, mais l'AME n'a pas vraiment d'ajouter, sauf si c'est nécessaire (ils seraient de l'utilisateur de l'écran). Bien sûrMarker
etMarkerOption
de l'AME paquet au lieu de Cartes d'API Android.OriginalL'auteur MaciejGórski
OriginalL'auteur Vahid Rajabi