Utilitário Google Maps: como obter todos os marcadores do ClusterManager <?>?
Desculpe pelo meu Inglês
Eu tentei oClusterManager<?>.getMarkerCollection().getMarkers()
método, mas ele retorna a coleção vazia.
Eu uso no meu aplicativoGoogle Maps Utility Library
. Toda vez que umrotação da tela eu crioAsynkTask
e no thread de segundo plano, leia os dados do DB e adicione itens aoClusterManager
:
cursor.moveToFirst();
while (!cursor.isAfterLast()) {
SomeData row = readSomeDataRow(cursor);
clusterManager.addItem(new ClusterItemImpl(row));
cursor.moveToNext();
}
Quando oAsyncTask
terminei seu trabalho (ou seja, no thread principal), tentei obter todos os marcadores doClusterManager
:
clusterManager.cluster();
// cluster manager returns empty collection \|/
markers = clusterManager.getMarkerCollection().getMarkers();
mas oClusterManager
retorna coleção vazia.
Pode ser no momento em que eu ligogetMarkers()
aClusterManager
ainda não coloca marcadores no mapa e o fará um pouco mais tarde (pode estar no encadeamento em segundo plano). Se sim, então como posso capturar esse momento?