只有在缩放更改后,Android地图标记才会在地图上显示

Dav*_*vid 7 android google-maps google-maps-markers

我做了简单的应用程序,我根据服务器的屏幕坐标得到标记.问题是标记不会立即出现在地图上.用户用户必须放大或缩小才能看到标记.这是为什么?从服务器下载标记数据时是否可以立即显示标记?或者有可能以某种方式刷新地图?我知道在以前的版本中,有一种方法map.invalidate()基本上就是我现在需要的方法.不幸的是,这种方法现在不可用.

我将添加代码片段,以添加我的标记

@Override
        protected void onPostExecute(ArrayList<MarkerItemData> markerItemData) {
            super.onPostExecute(markerItemData);
            if(markerItemData != null) {
                mClusterManager.addItems(markerItemData);
            }
        }
Run Code Online (Sandbox Code Playgroud)

bla*_*ara 10

它需要再次重新聚类.

mClusterManager.addItems(markerItemData);
mClusterManager.cluster();
Run Code Online (Sandbox Code Playgroud)

因为,当您添加或删除ClusterItem(MarkerItemData)时,它只执行算法并计算群集.但是不在地图上渲染

最后,ClusterManager侦听onCameraIdle事件(包括缩放事件)并在内部调用cluster()方法.这是用户必须放大或缩小的答案,只有标记可见.