我已经在 Android 中使用我的标记开发了 googleMap,但它们只会在我刷新或执行过滤器后显示,并且它们不会在第一次运行或清除缓存后显示。
protected void refreshMap()
{
final boolean useClusters = NumericUtil.parseBool(getObjectModel("useClusters"));
markerArray = new ArrayList();
markersMap = new Hashtable();
poiMarkersMap = new Hashtable();
locationMapper = new ArrayList();
IDictionary attachments = new Hashtable();
safeInvokeSync(new Runnable() {
@Override
public void run()
{
googleMap.clear();
if (mClusterManager != null)
mClusterManager.clearItems();
//configOfflineMaps();
}
});
safeInvokeAsync(new Runnable() {
@Override
public void run()
{
if (useClusters && valuesCount > 2)
{
if (mClusterManager == null)
{
mClusterManager = new ClusterManager<>(getContext(), googleMap);
mClusterManager.setRenderer(createMarkerRenderer());
googleMap.setOnCameraChangeListener(mClusterManager);
}
ClusterMarker clusterMarker = new ClusterMarker(position, marker.getTitle(), marker.getSnippet(), marker.getIcon(), entry);
mClusterManager.addItem(clusterMarker);
mClusterManager.cluster();
}
else
{
Marker newMarker = googleMap.addMarker(marker);
newMarker.setDraggable(checkPermissionsValue(Permissions.Update));
markersMap.put(newMarker.getId(), entry);
markerArray.add(newMarker);
}
}
});
}
}