0

I have developed googleMap with my markers in Android, but they only will be displayed after I refresh or do a filter and they would not be shown at the first run or after clear cache.

    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);
                    }
                }
            });
        }

}

Sparks Sh
  • 109
  • 1
  • 12

0 Answers0